みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

send-pack: unexpected disconnect while reading sideband packet を解決する

Git LFS を有効にした Git レポジトリに 100 MB を超える複数のファイルを push したら,エラーが発生してどうにもならなくなりました.

> git push origin master:master
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
Everything up-to-date

解決するには http.postBuffer を大きくすればよいみたいです.

git config --global http.postBuffer 64000000

ドキュメントを引用します.

Maximum size in bytes of the buffer used by smart HTTP transports when POSTing data to the remote system. For requests larger than this buffer size, HTTP/1.1 and Transfer-Encoding: chunked is used to avoid creating a massive pack file locally. Default is 1 MiB, which is sufficient for most requests.

Git - git-config Documentation

あまり大きな値にしても仕方がないようなので,普段はデフォルトを使用し,エラーが発生するときに一時的に値を増やすようにすればよさそうです.

git config --global --unset http.postBuffer
git config --global -l

push する側の問題であり,サーバーには問題がないので,このエラーによってレポジトリに影響はでないと思われます.