我的项目根文件夹中有一个root .gitignore文件(Visual Studio)。在一些子文件夹中,我有一个名为3rdParty的文件夹,其中包含lib,debug和release等文件夹,其中包含dll文件。
我想将这些提交给我的GIT回购。
在我的.gitignore on rootlevel上,调试和发布被排除在外。
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
我已经尝试将.gitignore文件放在几个没有调试和发布规则的3rdParty文件夹中。
#[Dd]ebug/
#[Dd]ebugPublic/
#[Rr]elease/
#[Rr]eleases/
但那没用。有没有办法可以设置一个!在我的根.gitignore中规则,以便包含所有级别上名为3rdParty的所有文件夹?
规则!** / 3rdParty / **毕竟是诀窍。我有上面的规则:
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
当我将规则放在我的.gitignore的底部时,它可以工作。我得到了规则:https://git-scm.com/docs/gitignore
在这个部分:
与完整路径名匹配的两个连续星号(“
**
”)可能具有特殊含义:一个领先的“
**
”后跟一个斜杠意味着匹配所有目录。例如,“**/foo
”在任何地方匹配文件或目录“foo
”,与模式“foo
”相同。 “**/foo/bar
”将文件或目录“bar
”匹配在“foo"
”目录下的任何位置。