是否可以从我的工作目录中删除所有未跟踪的文件?假设我在工作目录中添加了一堆文件,不是通过“ hg add”添加文件,现在想完全摆脱那些新文件吗?
我在Windows上,尽管我正在使用PowerShell,所以在这里也可以使用组合解决方案。
是否可以从我的工作目录中删除所有未跟踪的文件?假设我在工作目录中添加了一堆文件,不是通过“ hg add”添加文件,现在想完全摆脱那些新文件吗?
我在Windows上,尽管我正在使用PowerShell,所以在这里也可以使用组合解决方案。
Answers:
添加名为purge的Mercurial Extension 。它由Mercurial发行。
该扩展名在“ hg”中添加了“清除”命令,该命令将删除Mercurial未知的文件。即未跟踪的文件。所以你的命令是
hg purge
默认情况下未启用此功能,可能是为了避免意外删除忘记添加的文件。
要安装此扩展,请将其添加到您的Mercurial设置文件中(在Unix上为.hgrc,在Windows上为Mercurial.ini)
[extensions]
purge =
要暂时启用此扩展,您可以使用
hg purge --config extensions.purge=
hg purge --config extensions.purge=
没有清除的正确方法是:
hg st -un0 | xargs -0 rm
rm -rf *
跳过点文件和点目录,包括.hg/
。同样,任何其他点文件(例如.evil-settings)也将生存并且清除效果更好。
谢谢!这在Powershell中也对我有用:
hg st -un | rm
hg purge --all
将删除所有未跟踪和忽略的文件。这对于清理源代码构建很有用