推送时 Git "efrror: RPC failed; result=55, HTTP code = 0"



我花了一整天的时间在这个问题上,真的需要一些帮助。当我尝试推送一个相对较大的提交时,

Writing objects: 100% (21/21), 908.07 KiB | 0 bytes/s, done.
Total 21 (delta 17), reused 0 (delta 0)

git需要很长时间才能响应,然后给出

"efrror: RPC failed; result=55, HTTP code = 0 
atal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date"

我已经搜索了这个错误代码,最有可能的解决方案似乎是扩展缓冲区大小

git config http.postBuffer 524288000

我尝试过这个解决方案,但没有成功。根据VonC的建议,我尝试从http切换到ssh。从ssh,我在同一点上挂了很长的电话。最终,出现以下错误消息

Read from remote host github.com: Connection reset by peer
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly

这可能是路由器的问题吗?我已经尝试过在不同的网络上从不同的计算机进行推送,并且能够成功地做到这一点。

我离开了Windows主机上的Linux机器,使用了糟糕的poshGit Windows PowerShell接口。

有什么想法吗??

您可以遵循BitBucket文章中的调试建议:

特别是"result=55"部分
这是来自libcurl的错误代码,该库用于与Git进行http通信。从libcurl文档中,55的结果代码表示:

CURLE_SEND_ERROR (55)
    Failed sending network data.

原因

这可能是由各种网络相关问题,甚至是Bitbucket服务本身引起的。这本质上意味着连接意外断开。需要检查的是尝试从任何公司防火墙或代理之外的"干净"网络上的机器进行推送。检查所有代理服务器,以确保它们正确地移动SSL数据,并且完全允许它们完成。

要帮助解决此问题,请尝试使用命令运行推送

GIT_CURL_VERBOSE=1 git push

变通办法

如果在检查了所有连接和代理配置后,连接仍然持续失败,请向支持人员报告上述信息。然后切换到SSH。我们在Set-up SSH for Git上有一个为Git设置它的指南。如果在设置SSH时遇到任何配置问题,请参阅我们的SSH疑难解答指南。

由于配置错误,我遇到了这个问题,我指向了一个前缀为http://而不是https://的远程,SSL上暗示了这个答案,这帮助我找到了解决问题的方法。

所以我的远程配置应该写:

$ git remote add origin https://github.com/jonasbn/perl-workflow.git

超过:

$ git remote add origin http://github.com/jonasbn/perl-workflow.git

小心,

jonasbn

它对我的有效

我只是杀死了终端,然后再次打开它,正常执行命令。。。。

终止终端

再次打开

git push-u原始主

我在GitHub上推送时遇到了同样的问题,问题是我试图上传一个3mb+的大图像到GitHub,我的连接非常慢。为了测试我是否创建了另一个repo,我手动将代码库上传到repo,但问题仍然存在,我得到了错误出现了问题当时我发现问题是我的互联网连接

解决方案

  1. 试着提高你的网络连接速度。如果你使用的是WIFI,你可以把路由器离设备更近,如果不起作用,你可以试着用以太网电缆或其他东西连接到互联网这里的想法是提高网速
  2. 如果上面的解决方案不起作用,那么你必须压缩你的图像,然后像往常一样推送

希望这能帮助到

最新更新