2017-02-10 367 views
0

我正在嘗試爲git創建gitignore文件,該文件忽略任何目錄中的任何.file文件。我想忽略dir /的實例內的.file的所有實例。這些是特定的文件格式和目錄。使用gitignore忽略子目錄中的文件

例如,.file是new.file的文件格式。目錄/是包含new.file的目錄。路徑是dir/new.file

我需要git忽略可能出現的dir /的可能實例中的.file文件的可能實例,這可能會出現任意的情況。

我測試過這些:

**/dir/*.file 
*/dir/*.file 
*/dir/**/*.file 
dir/**/*.file 

但是,每當我創建一個foo/dir/new[*].file,我能夠git add它也git commit文件。

dir /目錄中的文件格式.file的所有新實例都將添加到使用git add .git add -A的分段中。我期望git忽略這些文件。

回答

0

**/dir/**/*.file似乎按照您指定的方式工作,至少在我的測試中。是否有可能您已經在回購中有問題的文件,並且必須先刪除它們?

git rm --cached <filepath> 
+0

我假設gitignore阻止'git'將文件添加到分段。我會盡力澄清我的問題。 – gitgudstud

+0

我現在看到了。我發現'**/dir/**/*。file'似乎適用於我,就像你指定的一樣。是否有可能您已經在回購中有問題的文件,並且必須先刪除它們? 'git rm --cached '可能對此有所幫助。 –

+0

這工作。我已經在各個層面上測試過了。首先,'foo/dir/new.file'沒有階段。其次,'Two/Three/Four/dir/new.file'不會階段。第三,'Two/Three/Four/dir/Five/new.file'沒有階段。 – gitgudstud