有什么方法可以用提交历史记录修复我的存储库.
# git log
fatal: object 01aeb2bf2e93b238f0e0422816b3e55518321ae7 is corrupted
Run Code Online (Sandbox Code Playgroud)
通过阅读下面的链接,看起来我已经删除它并重新开始.
我在相同的情况下结束了,可能是因为我正在使用的虚拟机关闭不当.在.git /对象中大约有10个对象长度为零.据我所知,实际的源代码文件很好,只是存储库被软管.
$ git status
fatal: object fbcf234634ee04f8406cfd250ce5ab8012f92b08 is corrupted
Run Code Online (Sandbox Code Playgroud)
根据我在其他地方看到的一些建议(包括上面提到的Linus的帖子),我试着暂时移动损坏的对象git在其他地方抱怨.git/objects.什么时候移动了所有这些,我得到了:
$ git status
fatal: bad object HEAD
Run Code Online (Sandbox Code Playgroud)
经过大约一个小时的谷歌搜索和尝试各种解决方案后,我放弃并开始使用'git clone'从原点拉出一个新的工作副本(比我的工作副本大约2小时).然后我使用rsync -rC
(-C排除SCM文件)将已更改的文件从混乱的工作副本复制到我的新工作副本.