我遇到了一个503错误推送到Github:
$ git push github develop
Counting objects: 22, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (22/22), done.
Writing objects: 100% (22/22), 4.16 KiB | 0 bytes/s, done.
Total 22 (delta 16), reused 0 (delta 0)
error: RPC failed; HTTP 503 curl 22 The requested URL returned error: 503 Service Unavailable
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date
我已经检查了他们的status page和“所有系统运行”,所以我想这一定是我的配置问题。我的.gitconfig
文件只有我的名字和电子邮件:
[user]
name = Bradley Wogsland
email = <omitted>
(我在这里省略了我真实的的电子邮件,但在实际的文件中它是存在的)。
4条答案
按热度按时间eufgjt7s1#
我遇到了同样的问题,并通过将Git缓冲区大小增加到我的repo的最大单个文件大小来修复它:
之后,我可以毫无问题地执行推送请求:
下面是Bitbucket Support的一个很好的解释:
原因
Git中的“智能HTTP”协议使用“传输编码:当POST请求中包含大于1 MB的打包对象时,会出现“chunked”。
有些代理服务器,如Nginx,默认不支持这种传输编码,请求在到达Bitbucket服务器之前会被拒绝。因此,Bitbucket服务器日志不会显示任何额外的信息。
另一个可能的原因是负载平衡器配置错误。
解决方法
http.postBuffer将数据投递到远程系统时,智能HTTP传输使用得缓冲区得最大大小(以字节为单位).对于大于此缓冲区大小得请求,HTTP/1.1与Transfer-Encoding:chunked用于避免在本地创建大规模的打包文件。默认值为1 MiB,对于大多数请求来说足够了。
解决方案
git config --global http.postBuffer 157286400
qq24tv8q2#
我遇到了同样的问题。尝试将我的全球电子邮件设置为我的帐户的电子邮件:
然后尝试
对我很有效。
j2cgzkjk3#
在我的情况下,这是一个防火墙规则。当我们的网络团队允许时,流量通过
ckx4rj1h4#
我在推送大量文件时遇到了这个问题。
增加postBuffer大小无法解决问题。
解决方案是取消设置http.postBuffer:
learn.microsoft.com - http.postBuffer问题