Mam taką strukturę katalogów:
- korzeń
- folder 1
- abc.json
- def.json
- somedir
- more.json
- folder2
- qwe.json
- rty.json
- spec
- mock1.json
- mock2.json
- somedir
- more_mocks.json
- folder 1
Teraz za pomocą a .gitignore
chcę zignorować wszystkie *.json
pliki oprócz tych w spec
. Nie chcę, aby użyć .gitignore
w folder1
a folder2
ponieważ istnieje mnóstwo z nich i będą dodawane do wielu, i jestem pewien, że nie zapomnę, aby przesunąć w prawo .gitignore
plik na swoim miejscu.
Ponadto może istnieć więcej zagnieżdżonych katalogów z plikami json i ta reguła musi mieć zastosowanie również do wszystkich podkatalogów.
Jak więc zignorować wszystkie pliki danego typu, z wyjątkiem pewnego podkatalogu?
!spec
. Działa jak marzenie.json
plikispec
bezpośrednio, a nie ten wsomedir
podkatalogu z pytania. Musiałem użyć!spec/**/*.json
, aby upewnić się, że równieżmore_mocks.json
został popełniony.