Git 克隆存储库错误:RPC 失败;结果=56,HTTP 代码=200

问题描述 投票:0回答:8

我已经使用 Git 存储库几年了,但仍然感觉像个新手..非常欢迎帮助!

它开始克隆一段时间:

remote: Counting objects: 22394<br>
remote: Compressing objects: 100% (12314/12314)<br>
Receiving objects: 32% ....

错误:

error: RPC failed; result=56, HTTP code = 200<br>
fatal: The remote end hung up unexpectedly<br>
fatal: early EOF<br>
fatal: index-pack failed

git命令:

git clone https://[username]:[password]@github.com/MegaWorldStudios/OmegatechV2.git "C:\OmegatechV2"

Git 版本:
1.9.4-preview20140929(今天从 git 小伙子下载/更新)

我发现了诸如此类的问题,但没有一个答案可以解决问题。

我也尝试过:
正如类似帖子中提到的那样,将 postBuffer 设置得更高

git config http.postBuffer 524288000<br>
git config --global http.postBuffer 524288000

设置--深度 1 并进行浅层克隆,稍后我可以拉出其余部分

设置--深度2

error: RPC failed; result=18, HTTP code = 200
Cloning from a branch other than the main branch
Reinstalling the software and updating

这个可怕的错误意味着什么以及修复/解决方法是什么?

提前非常感谢!

git github repository
8个回答
18
投票

此错误是由于 Git 的 HTTPS 协议造成的。要详细查看错误,可以设置

GIT_CURL_VERBOSE
环境变量。例如:

$ GIT_CURL_VERBOSE=1 git pull

您的防病毒软件或防火墙可能会修改传输中的 HTTP 数据包。例如,请参阅git克隆因防病毒而失败

最后,可能是网络连接不可靠。我使用的是连接到 Wifi 的 OSX 计算机,当我切换到 LAN 连接时问题消失了。


3
投票

我遇到了类似的错误。尝试配置

http.postBuffer
但没有成功。

我在这里发现了同样的错误(带有解决方案):Git Clone Fails - error: RPC failed;结果=56,HTTP 代码=200

按照上面链接中的建议,我通过使用 SSH 执行克隆解决了这个问题。

这里有一个关于如何为 Git 设置 SSH 的好教程。


2
投票

当前在 debian 和 ubuntu 中提供的 git 二进制文件不支持使用 HTTPS url 的 Git 克隆。请参阅此答案了解解决方法。


1
投票

这是 Atlassian StashMac OSX git 客户端特有的问题。解决方法:

  1. 按照此处的说明安装 HomeBrew:http://brew.sh/

  2. 遵循 this gist 中提供的解决方案(由 entropiae 提供):

    $ brew remove git
    $ brew remove curl
    
    $ brew install openssl
    $ brew install --with-openssl curl
    $ brew install --with-brewed-curl --with-brewed-openssl git
    

    (这会在例如

    /usr/local/Cellar/git/2.10.2/bin/git
    中安装一个工作二进制文件)

  3. 告诉您的 IDE 使用该二进制文件,或者您可以从命令行运行它来克隆/推送等


0
投票

当我尝试将代码推送到 bitbucket 时,我在 Mac OSX 上遇到了同样的问题。我采取了以下 2 个步骤来解决该问题:

  1. 使用命令增加缓冲区: git config http.postBuffer 524288000

  2. 将协议从 HTTPS 更改为 SSH。这是解决问题的关键。您可以参考https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html了解更多信息。


0
投票

在这里发帖是因为这是“RPC 失败;”的第一个 Google 结果之一。结果=56,HTTP 代码=200'。

我尝试了很多不同的方法来解决这个问题。我尝试从源代码编译 git,添加 gitconfig 设置,甚至尝试了 GitLab 服务器的多种配置。这些方法都不起作用。我不明白为什么我可以在与 git 服务器相同的子网上成功克隆存储库,但无法通过远程子网(通过站点到站点 VPN 连接)。

问题最终出在我的防火墙上。我将客户列入白名单,一切开始工作。暂时将客户端置于 DMZ 中也可能是一个快速解决方案。


0
投票

我在克隆一个非常大的存储库时遇到了同样的问题。我尝试配置 http.postBuffer,但它对我不起作用。 最后,这是我的互联网问题。

我将笔记本电脑连接到高速互联网,并且克隆成功!


0
投票

使用免费的 1.1.1.1 VPN 有帮助。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.