hg log 找不到文件,即使它存在

hg log not finding file even though it exists

我不明白为什么 Mercurial 在执行日志命令时有时找不到文件,但在我执行状态时它总是能找到它。

例如:

hg status --change "1111" "path\to\file" -- Returns 文件路径

hg log -r "1111" "path\to\file" -- Returns 变更集

但是,有时它会因不同的变更集而失败:

hg status --change "2222" "path\to\file" -- Returns 文件路径

hg log -r "2222" "path\to\file" -- Returns 没有

怎么会这样?如果通过使用状态命令证明文件存在,我如何不通过登录某些变更集来检索变更集?

隐藏在文档中,这似乎解决了我的问题:

For performance reasons, 'hg log FILE' may omit duplicate changes made on branches and will not show removals or mode changes. To see all such changes, use the --removed switch.

您必须指定这一点似乎有点荒谬,尤其是当您已经明确说明该文件时。