Wenn git fetch
zum Beispiel durch Ctrl-C oder durch Verbindungsprobleme unterbrochen wird, funktionieren danach git fetch
und auch git pull
nicht mehr.Wie kann ich das Git-Repository reparieren, das durch einen unterbrochenen Git-Abruf unterbrochen wurde?
[email protected]:~/code/openttd-git$ git fetch
^C
[email protected]:~/code/openttd-git$ git fetch
error: Unable to find 22d90742fc79a9011fb86ee03d8aeea66bc12657 under http://git.openttd.org/openttd/trunk.git
Cannot obtain needed object 22d90742fc79a9011fb86ee03d8aeea66bc12657
error: Fetch failed.
Ich glaube, das ist nicht im Zusammenhang mit dem Repository. Die Verwendung von git clone
zum Erstellen einer Kopie dieses beschädigten lokalen Repositorys in einem neuen lokalen Repository behebt dies nicht. Die einzige Lösung, die ich bisher kenne, ist git clone
das gesamte Remote-Repository (origin/master
) in ein neues lokales Repository. Aber gibt es eine bessere (schnellere) Lösung?
Es gibt Debian bug report, die letzte Nachricht vom Februar 2011 hat. Ist das der gleiche Fehler, den ich habe oder gibt es bereits eine Lösung oder einen Workaround? Meine Git Version ist 1.7.10.
Danke, das funktioniert. Es sollte angemerkt werden, dass es mehrere '* .pack.temp' und entsprechende' * .idx' Dateien geben kann (ich hatte 3 von beiden). Ich habe sie alle in ein separates Verzeichnis verschoben, und danach haben 'git fetch' und' git merge origin/master' richtig funktioniert. – nrz