如果你hg log myfile -v
看到了文件被修改的变更集列表。
在我们的例子中,在最近的变更集中,该文件已被删除。但是您无法通过查看 hg 日志的详细 (-v) 输出来判断这一点。是否有一个简单的 Mercurial 命令可用于确定文件是否以及何时从存储库中删除?
更新:请注意,这是在 Windows 客户端上,我们使用 Mercurial v 1.4.3
更新 2:似乎下面的答案适用于更新版本的 Mercurial,但目前还没有升级的可能性。v 1.4.3 的任何其他想法???
您可以使用 revsets 检查哪个版本删除了文件(任何其他有趣的功能):
hg log -r 'removes(<myfile>)'
一些例子:
hg log -r 'removes(build.xml)'
// build.xml 以前在当前目录中的位置
hg log -r 'removes("**/build.xml")'
// build.xml 可能位于子目录中的位置
详情请参阅hg help revsets
。
该--removed
标志应该为您提供所需的内容:
hg log myfile -v --removed
从帮助hg log
:
--removed include revisions where files were removed
这是我用来列出存储库中所有已删除文件的方法:
hg log --template "{rev}: {file_dels}\n" | grep -v ':\s*$'