Post

Git RPC failed; HTTP 400 curl 22 해결법

Git RPC failed; HTTP 400 curl 22 해결법

만들던 프로젝트를 git을 통해서 관리하고 있던 도중에, git이 잘못해서 오지게 꼬이는 바람에 다시 push를 해서 repository에 올리려고 했다. 그러던 와중에 이러한 에러가 떴다.

1
2
3
4
5
6
error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (394/394), 6.67 MiB | 4.99 MiB/s, done.
Total 394 (delta 33), reused 0 (delta 0), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date

에러를 읽어보면, 400: Bad Requestsend-pack 부분에서 갑자기 끊겼다고 말하고 있다. 그리고 마지막 라인에는 Everything up-to-date라는데 솔직히 이 표현은 필요 없는 듯 하다.

아무튼 알아보니, git으로 push하려는 데이터 양이 너무 많을 경우 이런 에러가 뜬다고 한다. 아래의 명령어를 통해서 간단히 해결할 수 있다.

1
git config --global http.postBuffer 524288000

위의 명령어는 git 명령어가 POST 요청에 대한 버퍼 크기를 최대로 늘리도록 바꾼다. 이렇게 하면, 에러없이 잘 동작하는 걸 볼 수 있다.

1
2
3
4
remote: Resolving deltas: 100% (33/33), done.
To https://github.com/...git
 * [new branch]      main -> main
branch 'main' set up to track 'origin/main'.
This post is licensed under CC BY 4.0 by the author.