我们正在运行 git v1.7.1 并配置了 gitweb。我们也使用 gitolite 进行管理,但我认为这与这个问题无关。我们有时会在 Apache 日志中收到错误消息,例如:
missing object 0000000000000000000000000000000000000000 for refs/heads/...
末尾的省略号通常是分支名称。我相信零字符串应该是 SHA1 值。显然,全零不是 SHA1 值。我不清楚这个值是从哪里来的?
我在服务器上运行了 git fsck 并没有报告问题,但是 git gc 解决了这个问题。此外,我们能够很好地拉取和推送到这个存储库(和那个分支)。只有 gitweb 似乎受到影响。
我知道其他人已经看到了这个问题,因为这里有一个关于它的封闭问题: Gitweb failure: fatal: missing object 0000000000000000000000000000000000000000 for refs/heads/master 这个问题没有答案。
附加信息
我们现在已经在我们的 gitolite-admin 存储库中看到了这个问题。我们的 gitolite-admin 存储库中没有分支,所以它不在分支上。