从Mercurial存储库中删除文件而不分发删除

时间:2017-03-15 14:13:46

标签: mercurial

在我的存储库中,有人提交的文件应该是未知的(或根据.hgignore文件忽略)。

如何告诉Mercurial不再跟踪这些文件,但将文件保留为远程工作副本中的未知(或忽略)?(使用远程工作副本我指的是其他用户的工作副本存储库。)

更多细节:特别是当项目作为Maven / Gradle项目导入时,这些文件是Eclipse IDE生成的.classpath和.project。它们已添加到存储库并已提交。我想不跟踪那些文件的变化,但我不想让每个人再次将项目重新导入Eclipse。将.classpath和.project重命名为.classpath.template和.project.template并不能解决我的问题。

1 个答案:

答案 0 :(得分:0)

这很棘手,因为当你告诉hg忘记它时,文件将被存储为在更改日志中被删除 - 并且在更新时它将在每个人的工作目录中被删除这些文件已从跟踪中删除。

如果您可以使用hg revert -rTRACKED FILENAME与每个人相处,其中TRACKED是(仍然)跟踪文件的变更集,它不是很好,但可能是最简单的解决方案。

您可能希望添加您不希望被跟踪的所有文件,以便添加到.hgignore中,以便这些文件不会被hg addremove意外添加。