2011-01-06 124 views
116

我有一個這樣的目錄結構:GIT中忽略特定類型的所有文件,除了那些在特定的子文件夾

    • folder1中
      • abc.json
      • DEF。 json
      • somedir
        • more.json
    • 文件夾2
      • qwe.json
      • rty.json
    • 規格
      • mock1.json
      • mock2.json
      • somedir
        • more_mocks.json

現在使用.gitignore我想忽略除了在spec的那些所有*.json文件。我不想在folder1folder2中使用.gitignore,因爲有很多這樣的東西,他們會被添加到很多,我相信我會忘記將正確的.gitignore文件移動到位。

另外,可能會有更多的嵌套目錄與json文件,這個規則也需要應用到所有的子目錄。

那麼如何忽略某個類型的所有文件,除了某個子目錄?

回答

184

一個可選的前綴!,它抵消了 模式; 排除的任何匹配文件先前的格式將再次包含 。如果否定模式 匹配,則這將覆蓋優先模式源的較低的 。

http://schacon.github.com/git/gitignore.html

*.json 
!spec/*.json 
+3

您還可以添加的.gitignore符合規範包含!/ *。JSON,如果你喜歡。 – 2011-01-06 23:29:28

相關問題