【问题标题】:gitlab self-hosted big push fail fatal: the remote end hung up unexpectedlygitlab自托管大推送失败致命:远程端意外挂断
【发布时间】:2016-10-16 10:30:55
【问题描述】:

我正在向 gitlab 自托管实例添加一个新项目,但是:

  • 如果我尝试仅使用自述文件推送提交,它会起作用。
  • 如果我尝试推送包含大量文件的大量提交,则会失败:

示例命令:

git push
Counting objects: 965, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (952/952), done.
Writing objects: 100% (965/965), 1.30 MiB | 1.51 MiB/s, done.
Total 965 (delta 479), reused 0 (delta 0)
Connection reset by x.x.x.x
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly

顺便说一句,在服务器上,有一些进程正在运行并永远等待推送完成......

gitlab   27227  0.0  0.0  95476  5220 ?        S    11:23   0:00 sshd: gitlab@notty
gitlab   27228  0.0  0.0   4508   708 ?        Ss   11:23   0:00 sh -c /opt/gitlab/embedded/service/gitlab-shell/bin/gitlab-shell key-1
gitlab   27229  0.0  0.0  30372  3796 ?        Sl   11:23   0:00 git-receive-pack /var/opt/gitlab/git-data/repositories/third-parties/MyThirdParty.git
gitlab   27241  0.0  0.0  23036  4208 ?        S    11:24   0:00 git index-pack --stdin --pack_header=2,965 --keep=receive-pack 27229 on dev --strict --fix-thin

我用gitlab已经有一段时间了,从来没有遇到过这样的问题。

推送是通过 SSH 完成的,所以显然 Http Post 缓冲区的增加没有影响。 我试图找到一些与 git ssh 缓冲区相关的配置,但它似乎不存在。

【问题讨论】:

    标签: git ssh gitlab


    【解决方案1】:

    编辑 Gitlab 配置文件:

    sudo nano /etc/gitlab/gitlab.rb
    

    Gitlab shell 设置下

    ## GitLab Shell settings for GitLab
    gitlab_rails['git_max_size'] = 104857600
    

    只需选择一个足够高的数字。

    更新运行配置

    sudo gitlab-ctl reconfigure
    

    附加说明:我已经在 SO 和其他一些网站上阅读过人们试图直接修改 Gitlab 根目录中的配置文件......只是不要。它将被下一次重新配置覆盖。

    【讨论】:

      猜你喜欢
      • 2021-08-02
      • 1970-01-01
      • 2013-02-04
      • 2013-02-20
      • 1970-01-01
      • 2014-09-17
      • 2011-10-12
      • 2012-06-08
      相关资源
      最近更新 更多