如何让Hg停止追踪已物理删除的目录及文件?
解决Mercurial中物理删除文件后仍被追踪的问题
你直接用rm -rf foo删掉目录后,Mercurial还在追踪里面的文件,所以hg status会显示!标记。之前用hg remove foo --after报错是因为foo目录已经不存在,Mercurial找不到这个路径。
有两个简单的方法可以让Mercurial停止追踪这些已物理删除的文件:
自动处理所有变更(删除+新增):
执行hg addremove命令,它会自动扫描仓库:把物理删除但仍被追踪的文件标记为已移除(状态变为R),同时把新增的未追踪文件标记为待添加。project/$ hg addremove只处理已删除的文件:
如果不想自动添加新文件,用--remove参数只处理状态为!的已删除文件:project/$ hg addremove --remove
执行完上面的命令后,再用hg status查看,原来的!标记会变成R,之后就能正常提交或推送你的变更了。
内容的提问来源于stack exchange,提问作者A. K.
相关产品推荐
相关产品推荐

