##// END OF EJS Templates
match: resolve filesets in subrepos for commands given the '-S' argument...
match: resolve filesets in subrepos for commands given the '-S' argument This will work for any command that creates its matcher via scmutil.match(), but only the files command is tested here (both workingctx and basectx based tests). The previous behavior was to completely ignore the files in the subrepo, even though -S was given. My first attempt was to teach context.walk() to optionally recurse, but once that was in place and the complete file list was built up, the predicate test would fail with 'path in nested repo' when a file in a subrepo was accessed through the parent context. There are two slightly surprising behaviors with this functionality. First, any path provided inside the fileset isn't narrowed when it is passed to the subrepo. I dont see any clean way to do that in the matcher. Fortunately, the 'subrepo()' fileset is the only one to take a path. The second surprise is that status predicates are resolved against the subrepo, not the parent like 'hg status -S' is. I don't see any way to fix that either, given the path auditor error mentioned above.

File last commit:

r24130:03f692ee default
r25122:755d23a4 default
Show More
changeset.tmpl
88 lines | 2.6 KiB | application/x-cheetah | CheetahLexer
{header}
<title>{repo|escape}: {node|short}</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/{node|short}{sessionvars%urlparameter}">log</a></li>
<li><a href="{url|urlescape}graph/{node|short}{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 class="active">changeset</li>
<li><a href="{url|urlescape}raw-rev/{node|short}{sessionvars%urlparameter}">raw</a></li>
<li><a href="{url|urlescape}file/{node|short}{sessionvars%urlparameter}">browse</a></li>
</ul>
<ul>
{archives%archiveentry}
</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>changeset {rev}:{node|short} {changesetbranch%changelogbranchname} {changesettag} {changesetbookmark}</h3>
<form class="search" action="{url|urlescape}log">
{sessionvars%hiddenformentry}
<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 class="author">author</th>
<td class="author">{author|obfuscate}</td>
</tr>
<tr>
<th class="date">date</th>
<td class="date age">{date|rfc822date}</td>
</tr>
<tr>
<th class="author">parents</th>
<td class="author">{ifeq(count(parent), '2', parent%changesetparentdiff, parent%changesetparent)}</td>
</tr>
<tr>
<th class="author">children</th>
<td class="author">{child%changesetchild}</td>
</tr>
<tr>
<th class="files">files</th>
<td class="files">{files}</td>
</tr>
<tr>
<th class="diffstat">diffstat</th>
<td class="diffstat">
{diffsummary}
<a id="diffstatexpand" href="javascript:toggleDiffstat()">[<tt>+</tt>]</a>
<div id="diffstatdetails" style="display:none;">
<a href="javascript:toggleDiffstat()">[<tt>-</tt>]</a>
<table class="diffstat-table stripes2">{diffstat}</table>
</div>
</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}