忽略git中的目录链?

时间:2010-08-02 11:54:45

标签: git file ignore gitignore glob

我需要忽略以下内容。

在像/a/b/c/d/e/f/g这样的路径中,我需要忽略/d/e/f/g。我还需要能够忽略/d/e/f/g下面a出现的每个地方。我试过了d/e/f/g,但那没用。想法?

2 个答案:

答案 0 :(得分:5)

有趣的要求。我很好奇你的用例实际上是什么。

应该这样做的方式是你需要排除的每个子树的父目录中的单独.gitignore(git读取所有.gitignore个文件在沿着树的路上。)

如果你真的想要一个.gitignore文件......好吧,我没有试过这个,但是去gitignore doc,它主要是一个典型的shell glob ,那么可能的工作方式如下:

a/*/d/e/f/g
a/*/*/d/e/f/g
a/*/*/*/d/e/f/g

......重复着越来越多的星号,你希望它能够合理地用到最深处。

我想这里会有性能损失,但我不知道有多严重。对于过去5到10年内建造的任何系统的大多数回购,可能都不会引人注意。

答案 1 :(得分:4)

尝试:

**/d/e/f/g

或:

a/**/d/f/g