你如何管理你的忽视?

时间:2011-07-13 06:21:30

标签: git mercurial gitignore hgignore

为了停止为每个新存储库编写.hgignore;我决定为我的hgignores创建一个单独的存储库,目前看起来像:

hgignores    
├── cpp
├── eclipse
├── intellij
├── java
├── latex
├── linux
├── netbeans
├── osx
├── python
└── textmate

现在,对于每个存储库,我都会粘贴相关的忽略。

例如:

$ cat hgignores/latex hgignores/osx hgignores/textmate >> [repo]/.hgignore

这让我想知道,如果将来我碰巧忘记了cpp的忽略文件的标志(例如),我将不得不编辑hgignores/cpp并最终在每个文件中进行更改我再次拥有cpp存储库!

我认为我正在通过创建一个忽略的统一回购来朝着正确的方向前进,但我可能会在这里和那里遗漏一些提示。

很想听到一些建议;或者深入了解如何完成这项工作?

2 个答案:

答案 0 :(得分:3)

我倾向于将关于我的个人工具的所有忽略模式放在我的全局忽略文件(gitmercurial)中:文本编辑器,操作系统等。其他从事该项目的人员不是关注这些,所以我让他们脱离项目的忽略文件。 这是您在每个项目中无需管理的一些忽略模式。

关于项目特定的忽略,拥有模板文件似乎已经足够了。每种语言所需的模式不会经常变化(对于大多数人来说可能永远不会)。您仍然可以在ignores存储库中编写一个小脚本来更新忽略文件。它只会导入缺失的模式。

答案 1 :(得分:3)

您可以在存储库外使用Mercurial的repo hgrcpoint to ignore files

[ui]
ignore = /path/to/ignorefile
ignore.cpp = /path/to/cppignorefile

您也可以在全局hgrc / Mercurial.ini中执行此操作,但如果您有一天需要,请记住这一点。

当然,由于hgrc未被克隆,因此必须将此部分重新添加到回购的新克隆中。