2017-06-23 56 views
0

我有一個.gitignore文件,其中我忽略了所有內容,然後取消忽略特定的文件和目錄。然而,它的一部分似乎並不奏效。.gitignore un-ignore .cc文件

/* 

!.gitignore 
!Makefile 
!include/ 
!src/ 
!test/*.cc 

**.swp 

*.cc文件在test目錄不會出現在git status

+0

[這個問題](https://stackoverflow.com/questions/10712555/gitignore-all-files-of-extension-in-directory)似乎熱衷於爲你創建一個'.gitignore'您特定的子文件夾。 –

+0

@TimBiegeleisen,我用'* .cc'製作了'test/.gitignore',但結果完全一樣。 – SU3

+0

你使用的是什麼版本的Git? –

回答

2

/*規則會導致test目錄被忽略,所以git根本不會下降到它。因此您的!test/*.cc規則不起作用。

你需要交替和重疊的這樣的規則的序列:不顧一切,然後取消忽略test,然後不顧一切test下,然後取消忽略內test.cc文件。

/* 
!test 
test/* 
!test/*.cc 
+0

我想一個目錄不會出現在沒有它的情況下無法匹配的模式。 – SU3