【发布时间】:2010-12-28 23:19:29
【问题描述】:
所以我创建了一个 not 裸露的远程仓库(因为我需要 redmine 才能读取它), 并且它被设置为与组共享(所以 git init --shared=group)。我能够推送到远程仓库,现在我正在尝试克隆它。
如果我通过网络克隆它,我会得到:
remote: Counting objects: 4648, done.
remote: Compressing objects: 100% (2837/2837), done.
error: git-upload-pack: git-pack-objects died with error.B/s
fatal: git-upload-pack: aborting due to possible repository corruption on the remote side.
remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
fatal: index-pack failed
我可以毫无问题地在本地克隆它,并且我运行了“git fsck”,它只报告了一些悬空的树/blob,我知道这不是问题。这可能是什么原因造成的?我仍然可以从中拉出来,只是不能克隆。我应该注意远程 git 版本是 1.5.6.5 而本地是 1.6.0.4
我尝试克隆我的本地仓库副本,剥离 .git 文件夹并推送到新仓库,然后克隆新仓库,我得到同样的错误,这让我相信它可能是导致 git-upload-pack 失败的 repo...
编辑: 我在 repo 中有许多 windows 二进制文件,因为我只是构建了 python 模块,然后将它们粘贴在那里,所以其他人也不必构建它们。如果我删除 Windows 二进制文件并推送到一个新的 repo,我可以再次克隆,也许这提供了一个线索。现在正在尝试缩小导致问题的确切文件范围。
【问题讨论】:
-
这似乎是cygwin的一个错误,如果你重试它可能会工作。
-
仅供参考,在本地克隆只是做硬链接,所以它可能不会做
index-pack或检查错误。 -
是的,重试,它可能会工作......在我的情况下,由于某种原因,它似乎在 https 上的故障较少
-
我收到了完全相同的错误消息。除了它还带来了以下几十个,全部重复,
error: packfile .git/objects/pack/pack-5f2b4b46e2dba195a0fa5d29dfd3cef88067f8ed.pack does not match index和warning:+ 相同的 'pack' msg +cannot be accessed。仅在尝试从这台特定机器克隆时才会发生。或者,在它失败后,当试图拉它时也会发生。后来似乎我们可以继续尝试,直到它最终完成。从该存储库克隆的任何其他机器都没有问题。 win服务器是裸机,所有机器都是带有cygwin的windows。 -
如果您的计算机上有多个物理驱动器,请在其他驱动器上尝试克隆。