Mercurial &引用;汞净化;已删除的跟踪文件

Mercurial &引用;汞净化;已删除的跟踪文件,mercurial,purge,mercurial-extension,Mercurial,Purge,Mercurial Extension,我知道这很奇怪,但我正在更新我的测试用例,并考虑从测试用例中删除所有未跟踪的文件,因此运行了hg purge,但除了删除未跟踪的文件外,它还删除了230多个测试用例的跟踪文件 有没有办法恢复到原来的状态,或者我可以取回文件?这些文件位于服务器上,因此我可以通过从服务器中提取来获取它,但这没有帮助,因为我必须再次更新它。如果您修改了工作目录(“以任何方式修改”),您可以轻松放弃更改并返回到干净的状态。“-使用 hg up-C-r. 是的,在@torek的后续行动中,hg-purge必须不要接触被跟

我知道这很奇怪,但我正在更新我的测试用例,并考虑从测试用例中删除所有未跟踪的文件,因此运行了
hg purge
,但除了删除未跟踪的文件外,它还删除了230多个测试用例的跟踪文件


有没有办法恢复到原来的状态,或者我可以取回文件?这些文件位于服务器上,因此我可以通过从服务器中提取来获取它,但这没有帮助,因为我必须再次更新它。

如果您修改了工作目录(“以任何方式修改”),您可以轻松放弃更改并返回到干净的状态。“-使用

hg up-C-r.

是的,在@torek的后续行动中,
hg-purge
必须不要接触被跟踪的文件,因为根据它的

扩展名清除所有未被跟踪的文件和目录 当前存储库中的Mercurial

但我可以看到一种可能的情况,为什么会发生。描述中的下一段阐明了这个主题

使用--all选项,它还将删除被忽略的文件

(下面是一些纯粹的猜测……)

如果您在
.hgignore
中有文件,并且手动将这些文件添加到存储库中(您可以
hg添加
忽略的文件),则清除可能会删除这些文件

你可以(相当容易)在回到良好的回购状态后验证我的想法

  • 安装|添加(Bitbucket,由于来自HG的BB难民,将很快消失)并检查版本的无知状态,但被扩展文件删除(至少部分)-您将从
    中看到结果和使用的模式。hgignore
  • 请(重试)
    hg purge--print
    ,以获取已清除文件的列表。若列表(已删除和忽略的版本文件)有交叉点,那个么您将得到问题“为什么”的答案

  • 我看不出这种扩展行为的任何其他原因

    它绝对不应该删除跟踪的文件,无论是否在工作目录中修改。不过,请注意,“跟踪”取决于您已经完成的提交。我运行了几个脚本(旧脚本),它一定是因为很少的测试用例而弄糟了。否则,为什么它只删除2700个测试用例中的230个。无论如何,谢谢!必须手动更新。因为有2000多个文件未被删除/还原。