いつものようにSourceTreeを使ってGitリポジトリにソースコードをPushしようとしたら,こんなエラーが出た。
error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly
リポジトリにアップロードしようとしたファイルがバッファサイズを超えるときに出るエラーらしい。
そういえば6MB程度のファイルがPushする内容に含まれていたっけ。
試したけどダメだったこと
バッファサイズを大きくすればPushが上手くいくという情報があったので,SourceTreeの次の赤丸で囲んだ「ターミナル」ボタンを押してターミナルを開き,
ターミナル上で「バッファサイズを50MBにする」という意味の次のコマンドを実行した。
git config http.postBuffer 52428800
(52428800は,50MBをByte単位で表記した数値のことだ。)
しかし,エラーは解消されなかった。
SourceTreeを再起動したけどダメ。
サーバー側(自分の場合はUbuntu+GitLab)の問題かなと思ったけど,有力な情報が見当たらない。
こうすると上手くいった
そうだ,設定ファイルを直接いじってやろう。
「ターミナル」ボタンの右の右にある「設定」ボタンを押すと次の画面が表示された。
「設定ファイルを編集」ボタンを押すと,設定ファイルを開くプログラムの選択画面が表示されるので,テケトーにテキストエディタを選択した。自分の場合は「サクラエディタ」。
テキストエディタで設定ファイルを開いた状態になるので,末尾に次の記載を追加した。
[http]
postBuffer = 52428800
これでPushでアップロードできるファイルサイズの上限が50MBになる。
再びPushを試したら上手いこといった。