2012-05-03 46 views

回答

3

您可以創建一個在您.gitignore否定項:

bin/ 
!packages/bin/ 
!packages/*/bin/ 
!packages/*/*/bin/ 

不幸的是混帳不支持**水珠多個目錄級別(或正則表達式匹配),因此忽略packages/whatever/binpackages/whatever/whatever/bin您需要兩個條目(依此類推以進行更深層次的嵌套)。

演示:

[[email protected]:/tmp/gitignore:master]> git status 
# On branch master 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
#  foo/bar/bin/ 
#  foo/baz/bin/ 
#  packages/bin/ 
#  packages/xxx/bin/ 
#  packages/xxx/yyy/bin/ 
#  xxx/packages/bin/ 
nothing added to commit but untracked files present (use "git add" to track) 

[[email protected]:/tmp/gitignore:master]> cat > .gitignore 
bin/ 
!packages/bin/ 
!packages/*/bin/ 
!packages/*/*/bin/ 

[[email protected]:/tmp/gitignore:master]> git status 
# On branch master 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
#  .gitignore 
#  packages/bin/ 
#  packages/xxx/bin/ 
#  packages/xxx/yyy/bin/ 
nothing added to commit but untracked files present (use "git add" to track) 
+0

請看更新。我也想排除像這樣的東西:packages/somefolder/bin – SiberianGuy

+0

回答更新。 – ThiefMaster