How to resolve the error “http.postBuffer” when pushed to the Git repository

When you attempt to push to a remote Git repository, you might encounter the following error, causing the operation to fail.

error: unable to rewind rpc post data - try increasing http.postBuffer
error: RPC failed; curl 56 LibreSSL SSL_read: Connection reset by peer, errno 54
send-pack: unexpected disconnect while reading sideband packet

In my case, this error occurred when pushing to AWS CodeCommit. There are two ways to fix it.


Method 1: Increase the http.postBuffer

The first method involves increasing the value of `http.postBuffer`, as suggested by the error message output to the shell. For example, you can do this as follows:

git config --global http.postBuffer 524288000

While the optimal value may vary depending on your environment, setting it to a large number should be sufficient.

In some cases, this method seems to fix the problem, but in my case, it did not.

Method 2: Change the connection protocol.

The error message output to the shell suggests an issue with the capacity of the HTTP transfer. Git supports connections via ssh as well as https. To connect with the ssh , do the following.

Upload your public key to the server.

You’ll need to register your ssh public key to establish a connection using the ssh protocol.

Change the repository URL.

Change the URL to the ssh connection URL with git remote set-url.

git remote set-url origin ssh://URL_TO_REPOSITORY
Verify the URL.

Check the URL using git remote -v. Typically, both the fetch and push URLs are changed in STEP 2, but in some cases, only the push URL might remain unchanged. In this case, change the URL for push as follows.

git remote set-url --push origin ssh://URL_TO_REPOSITORY

In my case, I solved the problem by changing to ssh, Method 2, and could push successfully.

Let's share this post !