git的问题(error: object file .git/objects/* is empty...)的解决

这篇具有很好参考价值的文章主要介绍了git的问题(error: object file .git/objects/* is empty...)的解决。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

由于操纵不当,导致git报错:

error: object file .git/objects/4a/13231c43ba3702636672cecb424112501178e5 is empty
error: object file .git/objects/4a/13231c43ba3702636672cecb424112501178e5 is empty
fatal: loose object 4a13231c43ba3702636672cecb424112501178e5 (stored in .git/objects/4a/13231c43ba3702636672cecb424112501178e5) is corrupt

        即提示xx文件是空的。在使用git log、git commit、git status等命令都会出此错误(文件名可能不一样)。第一次遇到时候不想花过多精力在解决这个问题上(工作要保证时间节点),另存为源代码,然后直接删除了本地的代码包括本地库。但是把.git删掉,重新init,虽然会很轻松地暴力地解决了这个问题。但是,这样的话之前的版本信息就全部丢失了,这并不是想要的结果。于是,又遇到的时候决定花点时间学习一下,这里记录已备后期再次遇到使用。

  先贴上找到的正确解决方法的链接:http://stackoverflow.com/questions/11706215/how-to-fix-git-error-object-file-is-empty

首先,删除所有空白文件

cd .git
find . -type f -empty -delete -print

然后,打印出日志文件最后两行(tail要作用在.git前一级目录,这里踩过一次坑):

cd ..
tail -n 2 .git/logs/refs/heads/master

接着,查看xx版本是否正常,即上一步打印出来的第一条

git show xxxx(版本号)

之后,回档:

git update-ref HEAD xxxx(版本号)

 检查一下:

git fsck

 我到这一步就已经OK能用了,链接后面还有一些处理我并没有继续做下去(我比较懒,目的就只是修复一下版本库,既然能用了我就不继续搞了,万一又坏了呢)

  链接中剩余的操作:文章来源地址https://www.toymoban.com/news/detail-613379.html

rm .git/index
git reset
git fsck

到了这里,关于git的问题(error: object file .git/objects/* is empty...)的解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包