GIT“refs / heads / gh-pages不指向有效对象!”

时间:2016-08-06 14:12:13

标签: git github github-pages

问:如何解决以下错误?

    error: refs/heads/gh-pages does not point to a valid object!
    error: refs/remotes/origin/gh-pages does not point to a valid object!
    error: refs/stash does not point to a valid object!

git statusgit log都可以正常使用

来源

我删除了以下文件以释放一些空间,因为它是一个巨大的2GB,因为我认为它是我提交的一个巨大的2GB文件的一部分,并试图用{{1}删除}}。我认为这是它的最后痕迹。

bfg

调试

使用rm ./.git/objects/pack/pack-bec4156621c0ce105abeedad0878eedf59f10a31.pack 我得到了下面的输出,但我对进行可能影响我的实际存储库内容的更改持谨慎态度。

$GIT_TRACE=1 git pull

1 个答案:

答案 0 :(得分:1)

你不应该删除任何.pack文件,这些文件会包含很多你的提交。由于它已被删除,因此您丢失了许多提交,包括refs/heads/gh-pages指向的提交。如果您已将所有本地引用推送到另一个仓库,则可以将其取回或进行另一次克隆。但是,如果你还没有,也许你需要一些工具来恢复硬盘中已删除的数据。

通常Git会在commit中存储松散的对象(包括treeblobannotated tag.git/objects/)。例如,如果存在sha1为1daa24d58e28ee48365d594e90ebb215ddd47809的提交,则可以将其设为.git/objects/1d/aa24d58e28ee48365d594e90ebb215ddd47809。为了进一步节省空间,Git将它们打包到.pack.idx,并通过.git/objects/pack通过git gc将其存储在{{1}},这是手动或自动运行。

参考:Git Internals