2012-10-02 14 views
14

Mam następującą strukturę katalogów:.gitignore: Jak ignorować zagnieżdżone katalogi?

test/a 
test/b/c 
test/a/b/Ouput 
test/c/d/e/Output 
test/f/Output 

chcę ignorować wszystkie katalogi „Wyjście” w pozycji „test”. Próbowałem test/**/Output, ale to nie zadziałało. Co ja robię źle?

+0

Ah, rozumiem. Dzięki za wytłumaczenie. – artagnon

+0

@hammar, ponieważ v1.8.2 (8 marca 2013 r.), Git akceptuje ** w plikach .gitignore –

Odpowiedz

13

Mówiłeś chcesz wzór Output/ dopasować tylko w katalogu test/, więc w katalogu test/, utwórz plik .gitignore z treścią:

Output/ 

Jeśli umieścisz ten wzór w swoim najwyższym poziomie .gitignore plik, a następnie będzie pasował do wszystkich katalogów pod górnym katalogiem.

+0

Co, jeśli chcę to zrobić w moim toplevel '.gitignore'? – artagnon

+0

@RamkumarRamachandra: Dlaczego nie chcesz tego w swoim 'test/.gitignore'? Powiedziałeś, że chcesz tylko dopasować wzorzec 'Output' w katalogu' test', więc jest to miejsce, do którego naturalnie należy wzorzec. –

+0

Zastanów się 'Wyjście /' zamiast 'Wyjście'. Pytanie prosi o ignorowanie katalogów o nazwie "Wyjście". –

5

Od wersja 1.8.2 (marca, 8. 2013), git obsługuje ** w .gitignore plików, więc korzystanie test/**/Output/ zignoruje wyprowadzane tylko podkatalogi w katalogu testowym.

Powiązane problemy