.gitignore nie ignoruje ścieżki .idea


105

Czego mi brakuje, co należy zrobić, gitaby zignorować moją .idea/ścieżkę?

ctote@ubuntu:~/dev/1$ git status
On branch master
Your branch is up-to-date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   .idea/.name
    modified:   .idea/misc.xml
    modified:   .idea/modules.xml
    modified:   .idea/vcs.xml
    modified:   .idea/workspace.xml
    modified:   src/Receiver.java
    modified:   test/1/agent/WindowsQueryHandlerTest.java

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

    lib/
    mp1.iml

no changes added to commit (use "git add" and/or "git commit -a")

ctote@ubuntu:~/dev/1$ cat .gitignore
*.class

# Package Files #
*.war
*.ear

# IDEA config files
.idea/


po prostu pliki można zignorować - dowolny folder dowolny plik, który chcesz zignorować - przejdź do narzędzia intellij, kliknij prawym przyciskiem myszy plik / folder -> git -> dodaj plik ti .gitignore, to wszystko - od tego momentu intellij zacznie ignorować te pliki / folder do zmian
Ashish Shetkar

Odpowiedzi:


273

.gitignore ignoruje tylko nowo dodane (nieśledzone) pliki.

Jeśli masz pliki, które zostały już dodane do repozytorium, wszystkie ich zmiany będą śledzone jak zwykle, nawet jeśli są zgodne z regułami .gitignore.

Aby usunąć ten folder z repozytorium (bez usuwania go z dysku), wykonaj:

git rm --cached -r .idea

11
fatal: pathspec „.idea” nie pasuje do żadnych plików
Oliver Dixon

Otrzymuję również powyższy komunikat o błędzie fata: pathspec ...
Solx85

@iLoveUnicorns Czy masz folder .idea, który został przeznaczony / przeniesiony do git?
Cristian Lupascu

5
LGTM, otrzymałem również te same błędy, co wymienione powyżej, ale wymusiłem usunięcie za pomocą -f. Dziękuję Ci.
Srinivas Damam

Długo tego szukałem. Pracuje. Podziękować!
CodeGodie

32

dodaj .idea/do pliku .gitignore

uruchom te polecenia w terminalu, aby zakończyć misję :)

git rm -rf .idea
git commit -m "delete .idea"
git push

2
fatal: pathspec '.idea' nie pasuje do żadnego pliku
Martin Erlic

13

Aby usunąć „fatal: pathspec '.idea' nie pasuje do żadnych plików” po prostu użyj, jeśli katalog nadal zwraca jako nieśledzony:

git clean -f -d .idea


4
To jedyne rozwiązanie, które ze wszystkiego zadziałało.
Josh Desmond

3
Spowoduje to usunięcie folderu z systemu plików!
Pero122

7

Dla tych, którzy otrzymają fatal: pathspec '.idea' did not match any files:

Musisz tylko podać pełną ścieżkę do folderu .idea.

Więc najpierw zrób git status, co powinno pokazać ci ścieżkę do .ideamiejsca, w którym aktualnie jesteś.

Następnie dołącz ścieżkę do polecenia sugerowanego przez w0lf: git rm --cached -r example/path/to/.idea


2

Jeśli po wykonaniu kroków z innych odpowiedzi nadal okaże się, że Twoja instancja git działająca w bash lub powershell po prostu śledzi folder .idea /, spróbuj tego!

Odkryłem, że IDE Jet Brains mają własne .gitignore i uruchamiają własną instancję git, która nadpisze twoje ustawienia .gitignore!

Aby to naprawić, przeszedłem do /.idea/.gitignore i zmieniłem jego zawartość na:

/**

aby zignorować wszystko w folderze.

Poniższy obraz pokazuje, jak możesz przejść do pliku .gitignore z poziomu IDE Jetbrains.

Lokalizowanie .gitignore


1

Aby rozwiązać błąd „fatal: pathspec '.idea' nie pasuje do żadnych plików” po wprowadzeniu powyższego polecenia,

  1. Sprawdź ścieżkę do swojego folderu pomysłów i jego plików.
  2. W tym celu git status. Wyświetli wszystkie pliki w zwykły sposób. Sprawdź ścieżkę do plików folderów pomysłów. Mój był o ../.idea/workspace.xml. Zwróć uwagę na../.idea
  3. Zmodyfikuj powyższe sugerowane polecenie w zaakceptowanej odpowiedzi na git rm --cached -r ../.idea
  4. Zobaczysz to, rm '.idea/workspace.xml'a pliki zostaną usunięte.

@AlexTotheroh yeah wydaje się to samo. Po prostu próbowałem pomóc innym, dokładnie wykonując kroki, które podjąłem w moim projekcie, aby rozwiązać ten problem.
Gautam Mandsorwale

Mam tutaj ten sam problem. .gitignoreznajduje się w katalogu modułu, a nie w katalogu projektu. Próbowałem ../.idea, jednak nie udało się. Wciąż sugeruje, że powinienem śledzić pliki w środku.idea
Kareem Jeiroudi

0

Aby zignorować .ideafoldery i imltypy plików, wykonałem następujące czynności:

wprowadź opis obrazu tutaj

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.