Mercurial是否可以删除具有certaain扩展名的所有文件?我做了一个addremove,然后我的所有二进制.pyc都被版本化了,现在我在版本控制时得到了这个限制:
tool kdiff3 can't handle binary tool docdiff can't handle binary no tool found to merge bnano-www/wtforms/widgets.pyc keep (l)ocal or take (o)ther? o 19 files updated,67 files merged,0 files removed,0 files unresolved C:\Users\developer\bnano\bnano-www>
我真的不知道这意味着什么,除了我可以按o为其他人继续我的工作.现在我想清理我的存储库,最佳的是能够在没有添加二进制文件的情况下执行addremove,但我认为这是不可能的.
在这种情况下,您能给出一些建议吗?
谢谢
解决方法
HgIgnore
首先,您可以向.hgignore文件添加一些规则,以告知Mercurial您要忽略某些文件.然后,hg addremove将不会自动添加它们,并且它们不会在未跟踪的命令输出中显示(即hg状态).
要删除文件,可以使用hg remove myfile,例如,如果所有pyc文件都在同一目录中,则可以执行hg remove * .pyc然后提交更改.
如果您的文件分散在各种存储库中,则hg remove -I * .pyc ** / *等应删除所有目录中的所有.pyc文件.
排除模式
仅供参考,最好在.hgignore文件中添加不需要的文件,你也可以通过执行hg addremove -X * .pyc告诉addremove忽略一些文件.这将添加/删除除具有pyc扩展名的文件之外的所有文件.
您可以使用帮助找到有关特定mercurial命令的帮助.例如,hg help addremove.总的来说,一切都很整齐!
教程
为了更深入地探索各种Mercurial概念,我推荐这个优秀的教程:http://hginit.com