~$ git commit .
error: inflate: data stream error (incorrect data check)
error: corrupt loose object '26f0654cde5d83f2ed8d971474d9d08a76644087'
fatal: object 26f0654cde5d83f2ed8d971474d9d08a76644087 is corrupted
有问题的对象不存在,我每隔一天左右就会做一次提交 因为它没有列出这个对象所在的位置,所以我不知道它是怎么做的 我猜我的最后一个是在上个月30号,所以我最近很平衡,但我仍然不知道为什么它正在做它现在正在做的事情。
我已经尝试git unpack-object -r < objectname
但它什么也没做。由于该对象在我的硬盘上不存在任何地方。
原始位现已更改:
Nom,我似乎刚刚发现了它。我没有意识到它实际上是26/26 /而不是自己。显然该文件是在12月1日制作的,因为自上次外部备份以来我没有说过这个对象,我相信是在几天之前。
什么是最好的方法呢?
答案 0 :(得分:1)
尝试
git stash
这对我有用。它隐藏了你没有做过的任何事情,并解决了这个问题。
答案 1 :(得分:0)
你需要看看这是什么对象。您需要确定它是blob,树,提交还是(不太可能)签名或消息标记。 Git有低级操作命令来执行此操作。
看看this post。
我建议使用filter-branch或rebase -i -preserve-merge来清理历史记录,以便所有sha-1解析为正确的对象。