Błąd SVN Git: proces Gita uległ awarii w repozytorium wcześniej


97

Po prostu próbowałem wprowadzić zmiany do mastera Git. Z tego, co przeczytałem, wydaje się, że chodzi o usunięcie pliku blokady. Wiadomość mówi:

upewnij się, że żadne inne procesy Git nie są uruchomione i usuń plik ręcznie

Może ktoś wie, który plik usunąć i jak usunąć?


1
Czy możesz wyświetlić pełny komunikat o błędzie, w tym polecenie, które uruchamiasz?
Schwern,

chociaż używam żółwia. czy możesz usunąć ten plik w żółwiu czy tylko w skorupce?
Pinchas K

Prawdopodobnie będziesz musiał to zrobić w powłoce lub eksploratorze plików. Być może będziesz musiał pokazać ukryte pliki.
Schwern,

pełny błąd jest następujący: krytyczny: Nie można utworzyć pliku „C / etc / .git / index.lock”. Jeśli żaden inny proces git nie jest obecnie uruchomiony, prawdopodobnie oznacza to, że proces git uległ awarii w repozytorium wcześniej. Upewnij się, że żaden inny proces git nie jest uruchomiony i usuń plik ręcznie, aby kontynuować.
Pinchas K,

5
Komunikat o błędzie mówi wszystko. Usuń C:\etc\.git\index.lockjak każdy inny plik.
Schwern,

Odpowiedzi:


194

Plik, o którym mowa, jest prawdopodobny .git/index.locki powinno być bezpieczne po prostu go usunąć, jeśli nie masz uruchomionych innych procesów git . Upewnij się, że polecenie git-svn nie zawiesza się.

PS Moje zwykłe podejście do rozwiązywania problemów z git-svn polega na ponownym ściągnięciu repozytorium. Czasochłonne, ale możesz to zrobić równolegle z próbą rozwiązania problemu. Miej mały wyścig między tobą a dupkiem. Oczywiście działa to tylko wtedy, gdy nie masz niezakończonych zatwierdzeń.


1
To nie rozwiązało tego za mnie. Miałem inny pozostały plik blokady w .git / svn / refs / remotes / git-svn / index.lock.
Kai Stavginski

74

Usunięcie index.lockpliku, jak stwierdził Schwern, rozwiąże ten problem.

Możesz go usunąć, uruchamiając rm -f ./.git/index.lock

rmPolecenie służy do usuwania (Usuń) plików i katalogów.

-fOznacza siłę, która opowiada komputera usunąć pliki bez monitowania o potwierdzenie


9

Dla użytkowników "GUI" takich jak ja

Otwórz rozszerzenie Git i wybierz repozytorium (jeśli więcej niż jedno) Wybierz „Ustawienia” z górnego menu, a następnie „Konserwacja Git”, a następnie kliknij „Usuń blokadę indeksu”

Rozszerzenia Git: Ustawienia-> Konserwacja Git-> Usuń blokadę indeksu



2

Może to również dotyczyć dowolnych plików * .lock w .git /

Sprawdź je i usuń. Możesz użyć:rm -f ./.git/*.lock



0

Usunięcie pliku index.lock, jak stwierdził Schwern, rozwiąże ten problem.

Możesz go usunąć, uruchamiając rm -f ./.git/index.lock

Polecenie rm służy do usuwania (usuwania) plików i katalogów.

-F oznacza siłę, która mówi komputerowi, aby usunął pliki bez pytania o potwierdzenie

nadal nie działa oznacza otwarcie gita przez git bash zamiast robić w terminalu

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.