损坏的 Git 存储库(数据流错误)[重复]

Posted

技术标签:

【中文标题】损坏的 Git 存储库(数据流错误)[重复]【英文标题】:Corrupted Git Repository (data stream error) [duplicate] 【发布时间】:2012-02-16 23:59:03 【问题描述】:

我收到以下错误:

X:\WAMP\www\topsecret>git fsck --full
error: inflate: data stream error (invalid code lengths set)
error: corrupt loose object '18076434b9cad667dbcf5be20162c506c95c2f55'
fatal: loose object 18076434b9cad667dbcf5be20162c506c95c2f55 (stored in .git/objects/18/076434b9cad667dbcf5be20162c506c95c2f55) is corrupt

当谈到 GIT 时,我完全是个菜鸟,而我对这个确切错误的搜索却一无所获。我真的很想保存这个回购,因为它可以追溯到很久以前。谢谢。

GIT 版本:1.7.7.msysgit.0

【问题讨论】:

【参考方案1】:

看看你是否能找到一个克隆的 repo 并手动复制那个对象。

以下是移动对象的方法:

http://www-cs-students.stanford.edu/~blynn/gitmagic/ch08.html#_the_object_database

对象被压缩,因此您不能将未压缩的内容直接存储到对象目录中。

【讨论】:

我检查了我推送到的 Web 服务器上的裸仓库,但那里不存在该文件。这是并排的目录图片:i.jaybuz.me/20120217012958888.png 可能是打包好的。 “git 显示 啊,是的!那么我该如何下载呢?终端显示它搞砸了。它不会也被损坏,因为它是通过我损坏的回购更新的吗? 我刚刚在远程仓库上执行了 'git fsck --full',一切看起来都很清晰! 您可以将输出流式传输到文件。然后您可以在本地存储该对象。

以上是关于损坏的 Git 存储库(数据流错误)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

无法克隆 git 存储库 [重复]

如何破坏 Git 存储库?

如何修复我的 TortoiseSVN 存储库中的损坏?

WSL+samba+git:“错误:将对象添加到存储库数据库.git/objects的权限不足” / git-clone / git-add 权限错误

删除损坏的 git 文件

如何修复Git中的'packet_write_wait:连接到...管道损坏'错误