Git:损坏的松散对象

Isr*_*ael 5 git

我试图将我的master分支与另一个名为 的分支合并pull-stage,但是 Git 向我抛出了这个错误:

error: inflate: data stream error (invalid distance too far back)
error: corrupt loose object '5a63450f4a0b72abbc1221ccb7d9f9bfef333250'
fatal: loose object 5a63450f4a0b72abbc1221ccb7d9f9bfef333250 (stored in .git/objects/5a/63450f4a0b72abbc1221ccb7d9f9bfef333250) is corrupt
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

我查看了其他帖子,但没有成功的结果:

shi*_*iva 1

我最近遇到了同样的错误,在我运行 git 的 virtualbox guest 崩溃后。我执行了以下操作,它解决了我的特定问题。请在尝试此操作之前备份您的树。

  1. 删除松散对象 rm .git/object/5a/63450f4a0b72abbc1221ccb7d9f9bfef333250

  2. 编辑logs/refs/head/,找到最后一个之前的commit id。

  3. 编辑 refs/head/,并使用旧的提交 ID

这应该允许您返回到标准 git 操作(但最后一次提交将会丢失)。