我在谷歌上搜索过,找到了很多解决方案,但没有一个适合我。

我试图通过连接到LAN网络中的远程服务器从一台机器克隆。 在另一台机器上运行此命令会导致错误。 但是使用git运行相同的克隆命令://192.168.8.5…在服务器上,这是正常的并且成功的。

有什么想法吗?

user@USER ~
$ git clone  -v git://192.168.8.5/butterfly025.git
Cloning into 'butterfly025'...
remote: Counting objects: 4846, done.
remote: Compressing objects: 100% (3256/3256), done.
fatal: read error: Invalid argument, 255.05 MiB | 1.35 MiB/s
fatal: early EOF
fatal: index-pack failed

我已经在.gitconfig中添加了这个配置,但也没有帮助。 使用git版本为1.8.5.5.2 .msysgit.0

[core]
    compression = -1

当前回答

在我的情况下,当协议是https时,什么都不起作用,然后我切换到ssh,并确保,我从上次提交而不是整个历史,以及特定的分支中拉回回购。这帮助了我:

Git克隆——深度1 "ssh:。Git "——branch " specific_branch "

其他回答

虽然不是完全相同的设置,但我在Ubuntu 20.04上挂载nfs共享时遇到了这个问题。我还没有找到任何解决方案,所以我分享了我是如何解决的,希望我能帮助到别人。

错误消息是(有时带有/没有警告):

warning: die() called many times. Recursion error or racy threaded death!
fatal: premature end of pack file, 29 bytes missing
fatal: premature end of pack file, 24 bytes missing
fatal: index-pack failed

Git浅克隆,禁用压缩等并没有解决这个问题。

当我用nfsvers=4.2而不是nfsvers=4.0挂载共享时,问题消失了。

git-daemon问题似乎在v2.17.0中得到了解决(使用无法工作的v2.16.2.1进行了验证)。 例如,在控制台中选择文本以“锁定输出缓冲区”的变通方法应该不再需要。

从https://github.com/git/git/blob/v2.17.0/Documentation/RelNotes/2.17.0.txt:

对“git守护进程”的各种修复。 (稍后合并ed15e58efe jk/daemon-fixes进行维护)。

我得到了同样的错误, 在我这边,我通过运行这个命令来解决,在windows中它有一些内存问题。

git config --global pack.windowsMemory 256m

尝试了这里的大部分答案,我得到的错误与PUTTY SSH客户端与所有可能的星座。

一旦我切换到OpenSSH,错误就消失了(删除环境变量GIT_SSH并重新启动git bash)。

我用的是一台新机器和最新的git版本。在许多其他/旧机器上(AWS也是如此),它在没有任何git配置的情况下使用PUTTY也能正常工作。

最终通过git配置——global core.compression解决

来自BitBucket问题线程:

我试了差不多五次,还是会这样。 然后我尝试使用更好的压缩,它工作! Git配置——global core.compression

从Git文档:

core.compression 整数-1..9,表示默认压缩 的水平。-1是zlib的默认值。 0表示不压缩,1..9是 各种速度/大小的权衡,9是最慢的。 如果设置,这将提供一个 默认为其他压缩变量,如core.looseCompression 和pack.compression。