Mercurial > hg
view mercurial/templates/paper/filediff.tmpl @ 30204:1894c830ee74
copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
When working in a rotated DAG (for a graftlike merge), there can be files
that are renamed both between the base and the topological CA, and between
the TCA and the endpoint farther from the base. Such renames span the TCA
(and thus need both passes of _checkcopies to be fully detected), but may
not necessarily be divergent.
Make _checkcopies return "incomplete copies" and "incomplete divergences"
in this case, and let mergecopies recombine them once data from both passes
of _checkcopies is available.
With this patch, all known cases involving renames and grafts pass.
(Developed together with Pierre-Yves David)
author | Gábor Stefanik <gabor.stefanik@nng.com> |
---|---|
date | Tue, 11 Oct 2016 04:39:47 +0200 |
parents | 63be46407a50 |
children | cba4461aa0a0 |
line wrap: on
line source
{header} <title>{repo|escape}: {file|escape} diff</title> </head> <body> <div class="container"> <div class="menu"> <div class="logo"> <a href="{logourl}"> <img src="{staticurl|urlescape}{logoimg}" alt="mercurial" /></a> </div> <ul> <li><a href="{url|urlescape}shortlog/{symrev}{sessionvars%urlparameter}">log</a></li> <li><a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a></li> <li><a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a></li> <li><a href="{url|urlescape}bookmarks{sessionvars%urlparameter}">bookmarks</a></li> <li><a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a></li> </ul> <ul> <li><a href="{url|urlescape}rev/{symrev}{sessionvars%urlparameter}">changeset</a></li> <li><a href="{url|urlescape}file/{symrev}{path|urlescape}{sessionvars%urlparameter}">browse</a></li> </ul> <ul> <li><a href="{url|urlescape}file/{symrev}/{file|urlescape}{sessionvars%urlparameter}">file</a></li> <li><a href="{url|urlescape}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a></li> <li class="active">diff</li> <li><a href="{url|urlescape}comparison/{symrev}/{file|urlescape}{sessionvars%urlparameter}">comparison</a></li> <li><a href="{url|urlescape}annotate/{symrev}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li> <li><a href="{url|urlescape}log/{symrev}/{file|urlescape}{sessionvars%urlparameter}">file log</a></li> <li><a href="{url|urlescape}raw-file/{symrev}/{file|urlescape}">raw</a></li> </ul> <ul> <li><a href="{url|urlescape}help{sessionvars%urlparameter}">help</a></li> </ul> </div> <div class="main"> <h2 class="breadcrumb"><a href="/">Mercurial</a> {pathdef%breadcrumb}</h2> <h3> diff {file|escape} @ {rev}:<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> {branch%changelogbranchname}{tags%changelogtag}{bookmarks%changelogtag} </h3> <form class="search" action="{url|urlescape}log"> <p>{sessionvars%hiddenformentry}</p> <p><input name="rev" id="search1" type="text" size="30" /></p> <div id="hint">{searchhint}</div> </form> <div class="description">{desc|strip|escape|websub|nonempty}</div> <table id="changesetEntry"> <tr> <th>author</th> <td>{author|obfuscate}</td> </tr> <tr> <th>date</th> <td class="date age">{date|rfc822date}</td> </tr> <tr> <th>parents</th> <td>{parent%filerevparent}</td> </tr> <tr> <th>children</th> <td>{child%filerevchild}</td> </tr> </table> <div class="overflow"> <div class="sourcefirst linewraptoggle">line wrap: <a class="linewraplink" href="javascript:toggleLinewrap()">on</a></div> <div class="sourcefirst"> line diff</div> <div class="stripes2 diffblocks"> {diff} </div> </div> </div> </div> {footer}