2015-05-26 9 views
8

git:gitignore nie zignoruje moje .settings/katalogu (tworzone przez zaćmienia) stan

Untracked files: 
(use "git add <file>..." to include in what will be committed) 
    .settings/ 

Próbowałem następujące wariacje na mój plik .gitignore i nic nie wydaje się działać:

.settings/ 

*settings* 

*.settings/ 

.settings/* 

Nigdy nie miałem tak dużego problemu z .gitignore, zwykle po prostu działa. Muszę robić coś naprawdę głupiego.

UWAGA: Mój plik .gitignore zawiera więcej niż tylko jedną linię (wszystkie pozostałe linie działają poprawnie).

+0

.settings/* działa dla mnie. gdzie znajduje się plik gitignorefile w porównaniu do katalogu .settings? –

Odpowiedz

1

Mój plik .gitignore posiada wiodący ukośnik przed .settings:

/.settings 

gdzie nie ma tego ukośnik. Spróbuj dodać ukośnik

+3

wiodący ukośnik sprawi, że tylko folder '.settings' w katalogu głównym (względem pliku' .gitignore') zostanie zignorowany (w przeciwieństwie do np. 'Foo/.settings') –

+0

@ umläute Ale ustawienie .settings jest zawsze w katalogu głównym. Pytanie dotyczyło konkretnie folderu .settings w projekcie Eclipse. To rozwiązanie rozwiązuje problem. –

+0

@ umläute Przeczytaj pytanie. Pytanie w szczególności pyta, jak odznaczyć katalog .settings. Odpowiedziałem na to konkretne pytanie. Jeśli OP chce wiedzieć, jak odrzucić inne katalogi, wówczas OP powinien zmodyfikować pytanie. –

0

Dla mnie poprawką było przeniesienie .settings/ na koniec pliku .gitignore. Początkowo właśnie tworzyłem pierwszą linię pliku .gitignore. Nie wiem, dlaczego to ma znaczenie. Czy ktoś ma wyjaśnienie?

+1

Brak jasnego wyjaśnienia tego, co zaobserwowałeś. Ale, FWIW, to działało dobrze dla mnie: '/ .settings' - w górnej części pliku, nawet ... – pioto

+0

Potwierdzone. Miałem już linię '*' w moim pliku '.gitignore', a jednak mój katalog'/documents/'(dokładna linia) nie został zignorowany. Kiedy przeniosłem swoją wyraźną (i pozornie niepotrzebną) linię '/ documents /' po mojej linii '! * /', Zadziałało. W tym katalogu jest dużo repozytoriów Git. Może to jest mylące dla Gita. –

2

Myślałem, że mam ten sam problem. Okazało się, powodem, dla którego ciągle widziałem .settings/in git status było, ponieważ ktoś inny już popełnił .settings/do repozytorium. Tak więc .settings/pokazywał się pod zmianami nie wystawionymi na listę zatwierdzeń, ponieważ mój IDE dotknął/zmienił ten katalog.

Chcesz .settings/pozostać niewidoczny dla git, więc usuń go ze śledzenia. Następnie, gdy wprowadzisz zmianę, która dotknie tego katalogu, nie zobaczysz go na liście plików Untracked, ponieważ dodałeś go do pliku .gitignore. Ten, kto popełnił .settings/na pierwszym miejscu, również nie zobaczy go jako uprawnionego do zatwierdzenia, ponieważ zaktualizował swój plik .gitignore swoją aktualizacją, aby zignorować folder .settings /.

2

/**/.settings/

pracował ignorować foldery .settings poniżej korzenia.

Powiązane problemy