Как восстановить поврежденный репозиторий 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, посмотрите, из какого из них вы можете сделать успешный журнал. надеюсь, это просто ваша последняя фиксация, которая коррумпирована или одна из ее деревьев.

Надеюсь, что это поможет