6

我一直在使用一个.hgignore很好的文件,最近添加了一种新类型的文件以忽略。运行“hg status”时,我注意到了这一点:

M .hgignore

因此 Mercurial 认为.hgignore是需要跟踪的文件(如果它是项目的根目录)。

现在我已经阅读了各种文档,但我的观点没有得到具体解决,所以这里有一些非常详细的问题,希望可以帮助我解决这个问题(如果有人回答可以引用并解决这三点,那就太好了[即使是简单的每个问题的是/否答案]):

  • 应该.hgignore在项目的根?(我想应该是,看到开发人员可能正在从事多个项目,这些项目都有不同的 .hgignore 要求)

  • .hgignoreMercurial可以忽略吗?

  • 如果可以忽略,则应 .hgignore被 Mercurial 忽略(与上一个问题不同)

.hgignore应该忽视的情况下,如果你突然回滚,当使用一个非常旧和不完整的时候,会不会发生一些非常糟糕的事情?.hgignore

我想我看到某些每个用户的 IDE 项目文件发生了奇怪的事情(我并不是说所有的 IDE 项目文件都是每个用户的,但有些肯定是)应该被忽略,但随后用户回滚到一个旧版本,一个旧版本.hgignore被使用,然后突然应该被忽略的文件被提交,因为旧版本.hgignore没有排除这些。

4

1 回答 1

13

您通常不会忽略 .hgignore 文件,因为您希望它成为存储库的一部分,以便所有用户最终都使用它。

至于回滚然后意外提交您不应该提交的文件 - 好吧,这确实可能在任何时候发生。负责任地提交。

对于您的其他问题:

  • 是的,.hgignore 应该位于存储库的根目录。
  • 是的,.hgignore 可以忽略自身。
  • No, .hgignore should not be ignored (unless you decide you don't want it in the repository).
于 2010-03-24T17:51:42.913 回答