当我试图从GitLab (GitLab 6.6.2 4ef8369)克隆一个存储库时,我遇到了这个错误:

remote: Counting objects: 66352, done.
remote: Compressing objects: 100% (10417/10417), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

然后中止克隆。我该如何避免这种情况?


当前回答

这种错误似乎在网络连接缓慢或有问题时更常见。我已经连接了良好的网速,然后它工作得很完美。

其他回答

简单的解决方案:与其通过https克隆,不如通过ssh克隆。

例如:

git clone https://github.com/vaibhavjain2/xxx.git - Avoid
git clone git@github.com:vaibhavjain2/xxx.git - Correct

我在这里试了所有的答案。 我在试着往我的机器里添加椰荚。

我没有SSH密钥,所以谢谢@Do Nhu Vy

https://stackoverflow.com/a/38703069/2481602

最后使用

git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

最终修复问题找到https://stackoverflow.com/a/50959034/2481602

试试这个

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup

这是我的工作。 capture.png

可能有两个原因

网速很慢(这是我的情况) 缓冲区大小较小,在这种情况下可以运行命令 Git配置——global http。postBuffer 524288000

几天后,今天我才解决了这个问题。按照本文生成ssh密钥:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

申报给

Git提供者(我正在使用的GitLab, GitHub)。 将此添加到本地标识。

然后通过命令克隆:

git clone username@mydomain.com:my_group/my_repository.git

没有错误发生。

上述问题

RPC失败;Curl 18传输关闭,读取数据出色 剩下的

因为通过HTTP协议克隆时出现错误(curl命令)。

并且,你应该增加缓冲区大小:

git config --global http.postBuffer 524288000