[Git] git push したら error: pack-objects died of signal 13
git push でエラーが発生し、bitbucket へ push ができなくなりました。
状況
% git push -u origin dev
Counting objects: 141, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (139/139), done.
Write failed: Broken pipe/141)
fatal: The remote end hung up unexpectedly
error: pack-objects died of signal 13
error: failed to push some refs to 'git@bitbucket.org:****/****.git'
対応
下記は GitHub ですが、どうもエラーの内容は file size が大きすぎると言うことらしいです。
試しに psd ファイルを登録したことが原因かもしれない。
.gitignore に *.psd を入れているディレクトリを追加します。
これで今後はインデックスに登録されなくなります。
docs/psd/
*.psd
さらに今までに登録されていた情報を削除します。
% git rm -r --cached docs/psd/
.gitignore の変更をコミットしました。
% git add .
% git commit -m 'add: .gitignore *.psd'
さらに必要か分かりませんが、git gc
しておきました。
% git gc
Counting objects: 1394, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (1351/1351), done.
Writing objects: 100% (1394/1394), done.
Total 1394 (delta 843), reused 0 (delta 0)
Removing duplicate objects: 100% (256/256), done.
git push
して無事完了。
% git push -u origin --all
binary ファイルの登録には気をつけた方が良いのかもしれません。
補遺
Bitbucket には、limit がないらしいのですが。。。
ありました。
後日、以下の対応も必要になりました。