我正在尝试克隆远程Git仓库。
我之前没有遇到任何问题,但在这个项目上,我收到了错误
致命:pack在偏移289293315处有坏对象:inflate返回-5
致命:索引包失败
如何找到导致错误的文件?我试过了git show :289293315
但它显然不是一个指数:
致命:路径'289293315'不存在(既不在磁盘上也不在索引中)。
答案 0 :(得分:1)
这是包文件中的错误。包文件包含许多单独的Git对象,所有对象都是delta-compressed。
要查找坏包文件,请查看.git/objects/pack
目录,该目录将包含一个或多个.pack
文件和相应的.idx
文件。例如,您可以在每个git index-pack -v
文件上运行.pack
,以查找问题。这就是现在发生的事情(没有-v
)。
在将错误的git unpack-objects -r
文件移出存储库本身后,您也可以使用.pack
来尝试恢复任何保留的好对象。但是,您最好的选择可能是找到存储库的良好克隆。同时你应该弄清楚为什么你现有的包文件变坏了:有什么东西破坏了文件吗?您的存储设备是否出现故障?