235

我有一个这样的目录结构:

    • 文件夹1
      • abc.json
      • def.json
      • 一些迪尔
        • 更多.json
    • 文件夹2
      • qwe.json
      • rty.json
    • 规格
      • mock1.json
      • mock2.json
      • 一些迪尔
        • more_mocks.json

现在使用 a.gitignore我想忽略*.jsonspec. 我不想使用.gitignorein folder1folder2因为其中有很多,它们会被添加到很多,而且我确定我会忘记将正确的.gitignore文件移动到位。

此外,JSON 文件的嵌套目录可能更多,此规则也需要适用于所有子目录。

那么如何忽略一个类型的所有文件,除了某个子目录?

4

1 回答 1

378

!否定模式的可选前缀;任何被先前模式排除的匹配文件都将再次包含在内。如果否定模式匹配,这将覆盖较低优先级的模式源。

https://git-scm.com/docs/gitignore

*.json
!spec/*.json
于 2011-01-06T23:24:57.417 回答