我花了一整天时间在这个上面,可以真正使用一些帮助。当我尝试推送一个相对较大的提交时,
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界面。
任何想法??
答案 0 :(得分:5)
您可以按照BitBucket article:
中的调试建议进行操作具体来说,是“
result=55
”部分 这是来自 libcurl 的错误代码,这是与Git进行http通信时使用的基础库。从libcurl文档中,结果代码55表示:
CURLE_SEND_ERROR (55)
Failed sending network data.
这可能是由各种网络相关问题引起的,甚至是Bitbucket服务本身。它本质上意味着连接意外删除。需要检查的是尝试从任何企业防火墙或代理之外的“干净”网络上的机器进行推送。检查所有代理服务器以确保它们正确移动SSL数据并完全允许完成。
要帮助解决此问题,请尝试使用命令
运行推送
GIT_CURL_VERBOSE=1 git push
如果在检查所有连接和代理配置后连接仍然一致失败,请报告上述信息以支持。然后切换到SSH 。我们有一个指南来设置Git at Set up SSH for Git。如果您在设置SSH时遇到任何配置问题,请参阅我们的SSH Troubleshooting guide。
答案 1 :(得分:5)
由于配置错误,我遇到了这个问题,我指的是一个前缀为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
答案 2 :(得分:0)
它对我有用
我只是杀死终端,然后再次打开它并正常执行命令......
杀死终端
再次打开
git push -u origin master