gpt4 book ai didi

Git 推送错误 : object file is empty/loose object is corrupt

转载 作者:太空狗 更新时间:2023-10-29 13:05:50 29 4
gpt4 key购买 nike

我正在尝试使用 Git Gui 执行 git 提交。我暂存了几个文件,然后由于电池电量不足,我的电脑突然关机了。我插上电源,重新打开,然后提交我想要的文件。然后我运行 git push,就像我以前做过一百万次都没有问题一样,这次我得到了以下错误:

Counting objects: 8, done.
error: object file .git/objects/b5/60c934f6bad40f4f246973afc0139ed91a2d32 is empty
Compressing objects: 100% (4/4), done.
error: object file .git/objects/b5/60c934f6bad40f4f246973afc0139ed91a2d32 is empty
fatal: loose object b560c934f6bad40f4f246973afc0139ed91a2d32 (stored in .git/objects/b5/60c934f6bad40f4f246973afc0139ed91a2d32) is corrupt
error: failed to push some refs to 'git@bitbucket.org:joemorano/app.git'

这可能是由于计算机在我可以执行第一次提交之前关闭造成的吗?

就在这一切发生之前,我显然通过在我的服务器上以 root 身份运行 bundle install 破坏了我的应用程序的生产版本,现在服务器上的一切都搞砸了,但我没有看看这会如何影响本地版本。我从来没有做过 git pull 或类似的东西。

以前有人遇到过这个错误吗?

最佳答案

第 1 步:对 .git 进行备份(事实上,我在每个更改内容的步骤之间执行此操作,但使用新的复制名称,例如 .git-old-1、.git-old -2 等):

cp -a .git .git-old

第 2 步:运行

git fsck --full

您将收到此错误消息

例如:错误:目标文件 .git/objects/0A/dsdadadadaaeer4r3434343434334f 为空

第 3 步:删除上面的空文件,它位于您的 .git/objects/ 文件夹中。继续删除空文件。

第四步:删除所有空文件后,现在运行

git fsck --full

第 5 步:尝试 git reflog。失败,因为 HEAD 已损坏。

第 6 步:手动获取 reflog:

git log origin/master..HEAD

第 7 步:请注意,从第 6 步我们了解到 HEAD 当前指向最后一次提交。因此,让我们尝试只查看父提交:

git show commit-id 

第 8 步:所以现在我们需要将 HEAD 指向 commit-id

git update-ref HEAD commit-id

希望这对你有用。

关于Git 推送错误 : object file is empty/loose object is corrupt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37312928/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com