何删除mercurial中的所有* .bak或* .orig文件?
示例:
C:\dev\web>hg stat
? Views\System\UnderConstruction.cshtml.bak
? Views\Topic\Index.cshtml.bak
? Views\Topic\MasterPage.cshtml.bak
? Web.config.bak
C:\dev\web>hg rem -I *.bak
abort: no files specified
答案 0 :(得分:5)
hg remove
仅删除已提交的文件。 AFAIK,mercurial中没有命令删除未跟踪的文件。
要了解文件模式如何在mercurial中运行,请运行hg help patterns
。
答案 1 :(得分:2)
hg status
hg remove -I **.bak -I **.orig
答案 2 :(得分:1)
您应该查看hg purge
扩展程序:
删除Mercurial不知道的文件。这对于测试本地和 在另外干净的源树中进行未提交的更改。
这意味着清除将删除:
- 未知文件:标有“?”的文件通过“hg status”
- 空目录:事实上,Mercurial会忽略目录,除非它们包含源代码管理
下的文件但它会保持不变:
- 修改和未修改的跟踪文件
- 忽略的文件(除非指定了--all)
- 添加到存储库的新文件(使用“hg add”)
如果在命令行上给出了目录,则只包含这些目录中的文件 目录被认为。
小心清除,因为你可以不可逆转地删除一些文件 忘了添加到存储库。如果您只想打印列表 该程序将删除的文件,请使用--print选项。
答案 3 :(得分:0)
您可以执行以下两个命令:
D:\workspace>hg purge -I **/*.orig --all
然后:
D:\workspace>hg purge -I **/*.bak --all
跟踪文件不会被删除,但我猜这对你来说不是问题。确保在运行之前启用了清除扩展,并且可以使用--print
参数进行空运行。