Git error: RPC failed; result=55, HTTP code = 200
What’s the matter with git?
$ git push Counting objects: 1431, done. Delta compression using up to 4 threads. Compressing objects: 100% (1326/1326), done. Writing objects: 100% (1429/1429), 131.94 MiB | 15.41 MiB/s, done. Total 1429 (delta 630), reused 0 (delta 0) error: RPC failed; result=55, HTTP code = 200 fatal: The remote end hung up unexpectedly fatal: The remote end hung up unexpectedly Everything up-to-date
5 Solutions collect form web for “Git error: RPC failed; result=55, HTTP code = 200”
We experienced this issue recently but none of the above solved it. In the end we pushed patches a few at a time (binary chop) until we found that one was causing the problem.
The version of Git on the server was older than our local Git and did not support one of the headers in the commit.
An easy way to see if this affects you is to run
git fsck in your repository directory. This will report any potential issues.
Change protocol git from https to ssh will resolve this problem.
This is guide using for bitbucket
In my case this was due to a GNUtls error, which showed up after running
GIT_CURL_VERBOSE=1 git clone https:<URL>
The workaround that worked for me was to build git using the openssl library instead of gnutls. For Ubuntu systems this link offers a way of achieving this.
It is worth noting that I’m behind a company proxy, and this may be triggering the problem.
Some info on the error here: https://confluence.atlassian.com/pages/viewpage.action?pageId=301663267
(from the linked article) Try this command to get more info about your error:
GIT_CURL_VERBOSE=1 git push
This is an odd error. I’m actually getting the same when I push a large repo to GitHub. However, error 55 is a CURL error, it’s basically a problem transmitting data over the network. The kicker is that if the data wasn’t sent correctly, how does CURL get a 200 response?
My only conclusion is I’m using a proxy and that the proxy is returning a 200 response to git, but the proxy itself had issues sending the data. I’m afraid this is an educated guess, but if you can use SSH then you’ll obviously bypass the dodgy proxy so I’d say this is the best workaround.