GitHub克隆错误

5

这个错误是在我尝试拉取代码时首次出现的,所以我删除了我的项目,但现在当我尝试克隆时仍然收到相同的错误。

$ git clone
remote: error: Could not read 5011270a43365eb58ad54d4caed71fcbc64e845d
remote: fatal: bad tree object 5011270a43365eb58ad54d4caed71fcbc64e845d
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header 

在谷歌上搜索了几个小时后,我发现有几个类似的错误,但都与git-upload-pack有关,所以你的“惊人答案”对我没有用。 - rderoldan1
1个回答

4

我曾经在非git upload-pack上下文(与我的先前回答相反)中看到过这个错误信息的另一种情况,就是在这个线程中:

Github有一个bug,如果有人提交了一个pull request给一个项目,然后删除了该条目(我不知道是他们只是删除了pull request,还是删除了他们的fork/account,但肯定是某些东西),那么你就会得到这些陈旧的引用。在Github的某个地方,有一个支持线程可以解决这个问题。

如果你克隆的upstream repo不是Github repo,并且你可以访问到该upstream repo,则git fsckgit fsck --lost-found可能会有所帮助。


作为一个GitHub仓库,OP rderoldan1采取了正确的行动,并向GitHub支持团队发出了报告(在评论中)

他们给我的回复是:
“我们已经找到了问题的原因,正在努力解决。
似乎Git仓库在文件服务器上已经损坏,需要进行一些手动的排线工作。请放心,我们的系统团队正在调查此事,并希望能尽快为您提供更新。”

rderoldan1向GitHub报告了结果:
今天10月9日,Jeff King给我发了一封电子邮件,现在我的git可以工作了:D,这是他的信息,感谢@VonC和GitHub员工。
您的存储库问题已修复。 拉取请求的测试合并之一的对象在我们这边丢失,导致git出现问题。这是由于我们端上的一个错误导致的,我们仍在追踪这个问题。 同时,我已经恢复了缺失的对象,现在存储库应该处于良好状态。

正如您所描述的那样,我在接受上游项目的拉取请求后出现了错误。git fsck显示了4个悬空提交,但我无法解决此问题,您知道其他解决方案吗? - rderoldan1
1
@rderoldan1 你可以查看 https://dev59.com/V2Yq5IYBdhLWcg3weQky 或 https://dev59.com/5G855IYBdhLWcg3wlVca 作为尝试恢复的示例。 - VonC
我给Github写了一封信,他们回复我说:“我们找到了问题的原因,正在努力解决中。看起来文件服务器上的Git仓库已损坏,需要进行一些手动线路解交叉操作。请放心,我们的系统团队正在调查,并希望很快为您提供更新。” - rderoldan1
1
@rderoldan1 很好。我已将您的评论添加到答案中以增加可见性,并说明在这种情况下,只有能够访问服务器上的存储库的人才能修复该存储库。 - VonC
1
@rderoldan1 对于被拒绝的编辑我很抱歉:我已经在答案中包含了您提出的内容(http://stackoverflow.com/review/suggested-edits/3102624)。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接