##// END OF EJS Templates
posix, windows: introduce cachestat...
posix, windows: introduce cachestat This class contains a stat result, and possibly other file info to reliably determine between two points in time whether a file has changed. Uniquely identifying a file gives us that reliability because we either atomic rename or append. So one of two will happen: the file 'id' will change, or the size of the file will change. posix implements it simply by calling os.stat() and checking if the result has st_ino. For now on Windows we always assume the path is uncacheable. This can be improved on NTFS due to file IDs: http://msdn.microsoft.com/en-us/library/aa363788(v=vs.85).aspx So we need to find out if a file path is on an NTFS drive, for that we have: - GetVolumeInformation, which unfortunately only works with a root path (but is available on XP) - GetVolumeInformationByHandleW, works on a full file path but requires Vista or higher

File last commit:

r14913:44382887 default
r14927:2aa3e07b default
Show More
filelog.tmpl
73 lines | 2.5 KiB | application/x-cheetah | CheetahLexer
{header}
<title>{repo|escape}: {file|escape} history</title>
<link rel="alternate" type="application/atom+xml"
href="{url}atom-log/tip/{file|urlescape}" title="Atom feed for {repo|escape}:{file}" />
<link rel="alternate" type="application/rss+xml"
href="{url}rss-log/tip/{file|urlescape}" title="RSS feed for {repo|escape}:{file}" />
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
<a href="{logourl}">
<img src="{staticurl}{logoimg}" alt="mercurial" /></a>
</div>
<ul>
<li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
<li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
<li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
<li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
<li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
</ul>
<ul>
<li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
<li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
</ul>
<ul>
<li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
<li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
<li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
<li class="active">file log</li>
<li><a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a></li>
</ul>
<ul>
<li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
</ul>
</div>
<div class="main">
<h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
<h3>log {file|escape}</h3>
<form class="search" action="{url}log">
{sessionvars%hiddenformentry}
<p><input name="rev" id="search1" type="text" size="30" /></p>
<div id="hint">find changesets by author, revision,
files, or words in the commit message</div>
</form>
<div class="navigate">
<a href="{url}log/{node|short}/{file|urlescape}{lessvars%urlparameter}">less</a>
<a href="{url}log/{node|short}/{file|urlescape}{morevars%urlparameter}">more</a>
| {nav%filenav}</div>
<table class="bigtable">
<tr>
<th class="age">age</th>
<th class="author">author</th>
<th class="description">description</th>
</tr>
{entries%filelogentry}
</table>
<div class="navigate">
<a href="{url}log/{node|short}/{file|urlescape}{lessvars%urlparameter}">less</a>
<a href="{url}log/{node|short}/{file|urlescape}{morevars%urlparameter}">more</a>
| {nav%filenav}
</div>
</div>
</div>
{footer}