Czego mi brakuje, co należy zrobić, git
aby 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/
Odpowiedzi:
.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:
źródło
-f
. Dziękuję Ci.dodaj
.idea/
do pliku .gitignoreuruchom te polecenia w terminalu, aby zakończyć misję :)
źródło
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
źródło
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.idea
miejsca, w którym aktualnie jesteś.Następnie dołącz ścieżkę do polecenia sugerowanego przez w0lf:
git rm --cached -r example/path/to/.idea
źródło
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.
źródło
Aby rozwiązać błąd „fatal: pathspec '.idea' nie pasuje do żadnych plików” po wprowadzeniu powyższego polecenia,
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
git rm --cached -r ../.idea
rm '.idea/workspace.xml'
a pliki zostaną usunięte.źródło
.gitignore
znajduje 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
Aby zignorować
.idea
foldery iiml
typy plików, wykonałem następujące czynności:źródło