gitignore规则始终包含具有特定名称的文件夹

时间:2018-09-09 14:16:14

标签: git gitignore

我的项目根文件夹中有一个.gitignore根文件(Visual Studio)。在某些子文件夹中,我有一个名为3rdParty的文件夹,其中包含lib,debug和release等文件夹,其中包含dll文件。

enter image description here

我要将这些提交到我的GIT存储库中。

在我的.gitignore的根级别上,排除了调试和发布。

[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/

我尝试将.gitignore文件放入几个3rdParty文件夹中,而没有调试和发布规则。

#[Dd]ebug/
#[Dd]ebugPublic/
#[Rr]elease/
#[Rr]eleases/

但是那没有用。有什么办法可以设置!我的根目录.gitignore中的规则,以便包括所有级别上名为3rdParty的所有文件夹?

1 个答案:

答案 0 :(得分:1)

规则!** / 3rdParty / **毕竟可以解决问题。我有以上规则:

[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/

当我将规则放在.gitignore的底部时,它会起作用。我的规则来自: https://git-scm.com/docs/gitignore

在本节中:

  

两个与全路径名匹配的连续星号(“ **”)可能具有特殊含义:

     

前导“ **”后跟斜杠表示在所有目录中均匹配。例如,“ **/foo”与文件“ foo”相同的任何位置都匹配文件或目录“ foo”。 “ **/foo/bar”在目录“ bar的正下方匹配文件或目录“ foo"”。