

今までgit管理していなかったサイトをgit管理することにし、  
自前のgitlabにpushしようとしたのですが、  
以下のようなエラーが出てしまいました。

[code]

    $ git push origin master:master
    Counting objects: 21810, done.
    Delta compression using up to 4 threads.
    Compressing objects: 100% (21810/21810), done.
    error: RPC failed; result=22, HTTP code = 413B | 177.00 KiB/s   
    fatal: The remote end hung up unexpectedly
    Writing objects: 100% (21810/21810), 1.00 GiB | 21.07 MiB/s, done.
    Total 21810 (delta 4024), reused 0 (delta 0)
    fatal: The remote end hung up unexpectedly
    Everything up-to-date
    
[/code]

容量は1.2GBほどあり、  
一気にpushしたせいでエラーがでてしまったのかと思うのですが、  
これを解決する方法はないでしょうか。


CC BY-SA 3.0
2015-12-30T12:50:29.417
20482
2015-12-30T20:28:53.297
9149
question
git
gitで大容量のコミットをpushするとき


大きなファイルを一度`git`の管理フォルダから外してからステージングしなおしてはどうでしょうか？

また基本的にバイナリファイルなどを取り扱うことは`git`は苦手なため、大きなバイナリファイルがあるのであれば`git-lfs`を使うことをおすすめします。

<https://git-lfs.github.com/>


CC BY-SA 3.0
2015-12-30T13:38:08.517
20484
2015-12-30T18:16:34.307
2015-12-30T18:16:34.307
3271
3271
20482
answer


トランスポートに HTTP を使っていて 413 が返されているのなら、それはやはり送信しようとするデータのサイズがサーバにとって大きすぎるということです。

GitLab のセットアップの詳細が不明なのでわかりませんが、例えば nginx
をフロントエンドサーバにしているのなら、次のような設定をすれば改善するかもしれません。

[code]

    client_max_body_size 2g;
    
[/code]

あるいは、送信データサイズの制限がない SSH のようなトランスポートを使うのがよいかと思います。


CC BY-SA 3.0
2015-12-30T20:28:53.297
20489
2015-12-30T20:28:53.297
9873
20482
answer