Как восстановить поврежденный репозиторий git?
После жесткого reset моего ноутбука, который зависает после фиксации git, у меня есть следующая ошибка при вводе любой команды в мой репозиторий git:
$ git status
fatal: failed to read object de02e6d5cd7823ea788429a33583bede09221163: Invalid argument
Есть ли способ восстановить мой репозиторий git?
Я не нашел решения из двух следующих вопросов:
EDIT: я не нашел, что вызвало повреждение моего репозитория git или какое-либо решение для его восстановления... Я, наконец, начал использовать новый клон из моего SVN-репозитория!
Ответы
Ответ 1
Для меня ни один из вышеперечисленных ответов не работал. Я просто повторил клонирование моего репозитория git, и все было хорошо. Перед клонированием я открыл все файлы, которые были изменены, и просто перезаписал их после pull.
Вот почему вы должны совершать часто:).
Ответ 2
Вы недавно нажали свой репозиторий, как github или bitbucket? Вы можете получить другой клон и скопировать каталог объектов.
В противном случае:
Посмотрите, сколько из них выполняется:
git fsck
git branch -a
git branch -a | xargs -n 1 git log -1
git reflog
С помощью reflog, посмотрите, из какого из них вы можете сделать успешный журнал. надеюсь, это просто ваша последняя фиксация, которая коррумпирована или одна из ее деревьев.
Надеюсь, что это поможет