2013-08-28 20 views
6

komenda ciągnąć Git działa poprawnie, ale git zapas daje następujący błąd:Git zapas nie „Błąd: Nie można rozwiązać bibl referencyjnych/zapas: Nie ma takiego pliku lub katalogu”

$git stash 
error: unable to resolve reference refs/stash: No such file or directory 
fatal: Cannot lock the ref 'refs/stash'. 
Cannot save the current status 

Jak rozwiązać tak, abym nie stracił moich zmian?

+0

Czy twój użytkownik ma uprawnienia do zapisu w katalogu '.git' /' .git/refs'? – knittl

+1

Jakiego systemu operacyjnego i jakiej wersji Git używasz? – VonC

+0

git wersja 1.7.9.5, Linux OS. .git i .git/refs mają uprawnienia do odczytu i wykonywania – skadoosh

Odpowiedz

15

Miałem bardzo podobny problem, po uszkodzeniu systemu plików.

Rozwiązaniem było usunąć plik lub katalog w .git/logs/literatury/zapas

Po usunąć plik lub katalog, plase wykorzystanie git zapas, aby utworzyć nowe ref, i to wszystko.

Spowoduje to usunięcie wszystkich ukrytych elementów, więc należy zachować ostrożność.

git stash 
error: refs/stash does not point to a valid object! 
rm -r .git/logs/refs/stash 
git stash 
Saved working directory and index state WIP on master: e1d74d8 fixing get_thumbnail_list 
+0

Tak, zrobiłem coś podobnego i ten problem nie pojawił się ponownie. Dzięki – skadoosh

+2

na git wersji 2.6.2 plik można znaleźć na stronie: .git/refs/stash –

2

można usunąć zapas i dodać nowy folder stash jeśli problem nadal pozostał po wyjąć zapas:

rm -r .git/logs/refs/stash

mkdir .git/logs/refs/stash

6

musiałem usunąć następujący plik również uzyskać to działa.

rm -f .git/refs/stash 
Powiązane problemy