有人在错误的分支上提交,所以我试图将提交移到另一个分支。当我试图回滚提交时,我收到了这个错误:
[user@server gitrepo]$ git reset --hard 9c2de3c0
fatal: unable to read tree 9c2de3c0af09fc07a84ff84b594beb5a6d489181
该对象看起来不错:
[user@server gitrepo]$ ls objects/9c/2de3c* -al
-r--r--r-- 1 git git 222 Aug 28 12:09 objects/9c/2de3c0af09fc07a84ff84b594beb5a6d489181
为什么它不能读取这个对象,我该怎么办?
编辑:将我的问题与其他问题区分开来:
- Git 的数据库似乎并没有特别出格。运行
git fsck -full
只显示几个 (~20) 悬空 blob 和一个悬空提交。这似乎并不特别令人震惊。