Как исправить репозиторий git, поврежденный прерванной выборкой git?

Если git fetchпрерывается, например, по нажатию Ctrl-C или из-за проблем с подключением, после этого git fetch, а также git pullтерпят неудачу работать.

user@computer:~/code/openttd-git$ git fetch
^C
user@computer:~/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.

Я считаю, что это не связано с репозиторием. Использование git cloneдля создания копии этого сломанного локального репозитория в новый локальный репозиторий не решает эту проблему. Единственное известное мне решение — это git cloneвесь удаленный репозиторий (origin/master) в новый локальный репозиторий. Но есть ли лучшее (более быстрое) решение?

Имеется отчет об ошибке Debian, последнее сообщение от февраля 2011 года. Это та же самая ошибка, что и у меня, или уже есть исправление, какое-либо решение или обходной путь? Моя версия git 1.7.10.

16
задан nrz 20 May 2012 в 07:37
поделиться