当没有其他丢失的对象时,在Git中重建丢失的树

当没有其他丢失的对象时,在Git中重建丢失的树,git,version-control,corruption,recovery,Git,Version Control,Corruption,Recovery,我的Git存储库声称存在损坏的对象:运行Git fsck--full表示repo中存在损坏的松散对象。由于对象已损坏,我无法使用git cat file-t将其解压缩,但删除该文件会导致fsck仅报告: broken link from tree 93e54230ef... to tree 5aec4ad... missing tree 5aec4ad... 我认为这个缺失的树是唯一缺失的文件,或者说没有悬空提交/blob,因为运行git ls tree 93e5423

我的Git存储库声称存在损坏的对象:运行
Git fsck--full
表示repo中存在损坏的松散对象。由于对象已损坏,我无法使用
git cat file-t
将其解压缩,但删除该文件会导致fsck仅报告:

broken link from tree 93e54230ef...
            to tree 5aec4ad...
missing tree 5aec4ad...
我认为这个缺失的树是唯一缺失的文件,或者说没有悬空提交/blob,因为运行
git ls tree 93e54230ef…
只显示一行:
040000 tree 5aec4ad。。。android
。此外,上次修改损坏文件的日期是昨天,从那以后我没有做任何更改。不幸的是,我已经检查了这个存储库的克隆,但是没有一个已经打包或解包了丢失的对象


如何在没有悬空提交或blob的情况下重建丢失的git树?

当git中缺少的只是一棵树时,解决方案就是使用

git write-tree
执行该命令后,Git存储库应恢复到其以前的状态