2011-07-15 10 views
6

Jestem nowicjuszem w git i byłem bardzo szczęśliwy aż do dzisiejszego wieczoru. Regularnie wprowadzam zmiany. Posiadam dwa piloty zdalnego sterowania na unfuddle i beanstalk oraz zdalny lokalny system plików.repozytorium git nie przetestowało błędu nadrzędnego

Nigdy nie popełniłem błędu i po kilkudniowej pracy przesunie moje zmiany do wszystkich pilotów, którzy wierzą, że zapewniam mi bezpieczeństwo. Nie było błędów i żadnych problemów.

Tego wieczoru poszłam do przejrzenia dziennika mojego projektu i mam ten błąd na moje bóle:

error: Could not read a2b6c2fa16e01db9e38d9509606a444e5831330a 
fatal: Failed to traverse parents of commit 
     78e81a9a7f5cafa5e2af4b95d156364b9a430ac9 

O ile widzę historia jest dobra, jak daleko wstecz, jak 29 maja. Nie mogę sklonować kopii z żadnego z pilotów. Nie ma innych klonów, których mogłabym użyć do odzyskania repozytorium. Nie wiem nawet, kiedy się zepsuł. Sprawdziłem FAQ, ale nie mam pojęcia, o czym mówi autor sekcji odzyskiwania repozytorium.

Kiedy uruchamiam git fsck, dostaję 155 linii tego brakuje i zwisam z tego. Najwyraźniej chciałbym to wyczyścić. Mogę żyć bez historii przed 29 maja, jeśli uda mi się to od razu osiągnąć.

Czy ktoś może mi pomóc rozwiązać ten problem?

Co może spowodować to? W tym okresie zmieniło się tylko to, że zaktualizowałem netbeans do wersji 7, która ma obsługiwać git, ale nie rozpoznaje istniejących repozytoriów.

Odpowiedz

1

"Zwisające" obiekty nie mogą stanowić problemu. Może to po prostu oznaczać, że wykonałeś kilka resetowania, przerzucania i/lub usuniętych gałęzi, które nie zostały w pełni scalone. "Z drugiej strony," Missing "jest bardziej poważny, jak sądzę. Spójrz na ten artykuł na temat repairing a damaged repo. To może ci pomóc. Możesz także spróbować uaktualnić git, jeśli jesteś nieaktualny. Nowsza wersja może być trochę mądrzejsza.

+0

Dziękuję. Jednak, podobnie jak w przypadku odpowiedzi @ Andy'ego, wskazuje się ten sam artykuł, którego nie rozumiem. Moja okoliczność jest inna. Błąd jest kilka tygodni wstecz i obiekt, który nie czyta, nie jest uszkodzony, nie ma go. ślad wydaje się przestać zimny. –

7

google ten błąd i znaleźć swoją stronę, w moim przypadku problemem było to, że zrobiłem:

git clone --depth 1 https://github.com/example/nifty.git 

ale miesiąc później, zapominając, że miałem tylko chwycił najnowsze rewizje, gdy starałem się naciskać do innego pilota, na który się skarżyła. Zajęło mi trochę czasu, aby dowiedzieć się, że to nie było repo zniszczone, ale tylko fakt, że nigdy nie miał rodziców zobowiązuje! Mam nadzieję, że to pomaga komuś.

to ustalone to dla mojego przypadku:

git fetch --unshallow 
+8

Co zrobiłeś, żeby to naprawić w tym przypadku? – Zahymaka

+0

Lol, zredagowałem swoją odpowiedź, aby pokazać rozwiązanie w moim przypadku. – weston

+0

Znalazłem, że otrzymuję komunikat 'fatal: --shshallow na kompletnym repozytorium nie ma sensu'. Może to być błąd z git, ale ponowne uruchomienie 'git fetch --depth = 1' przed' --unshallow' wydaje się, że git faktycznie nie jest realny. – jozxyqk

Powiązane problemy