推入gitlab时出错

推入gitlab时出错,git,gitlab,Git,Gitlab,在本例中,我安装了一个带有gitlab的交钥匙linux。我已经设置了一个静态ip。 当我推送一个文件时,它运行正常,但当我推送所有symfony项目时,它返回一个错误 $ git push Counting objects: 7854, done. Delta compression using up to 4 threads. Compressing objects: 100% (7449/7449), done. Writing objects: 100% (7854/7854), 6.4

在本例中,我安装了一个带有gitlab的交钥匙linux。我已经设置了一个静态ip。 当我推送一个文件时,它运行正常,但当我推送所有symfony项目时,它返回一个错误

$ git push
Counting objects: 7854, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7449/7449), done.
Writing objects: 100% (7854/7854), 6.45 MiB | 2.08 MiB/s, done.
Total 7854 (delta 2669), reused 0 (delta 0)
error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date
我尝试的是:

在/home/git/gitlab/config中修改gitlab.yml,将git最大大小更改为20971520 20 mb 更改了postBuffer:git config-global http.postBuffer 524288000 还对文件的一小部分进行了不同的提交,虽然有效,但根本不起作用
显然,这是gitlab中的一个已知问题。一种解决方法是使用ssh而不是http进行推送。

另一种使其像http一样工作的方法是更改配置文件og NGINX。客户端的最大体大小默认为1M。所以在文件/etc/nginx/nginx.conf中添加如下内容

http {
    client_max_body_size 100M;
}

通过这种方式,您可以推送高达100 mb的HTTP。您好,谢谢您的回答。我在windows环境中,我用油灰发生器制作了一把prublic/pivate钥匙。然后我在控制台中输入$type ssh-gitlab.pub | clip,当我推送时,我问我密码,但不知道密码是什么。尝试了所有的方法,知道吗?在生成公钥/私钥时,您可以选择密码。如果您没有选择任何选项,它将为空。我认为它抱怨的原因是因为你的遥控器被设置为http,使用git remote-v检查此选项如果您将源代码视为http,则需要使用git remote删除源代码删除旧的远程代码并再次添加git remote添加源代码git remote add origin styleurl:EDIT:更简单的是,您可以使用git remote set url origingit@github.com:USERNAME/REPOSITORY.git再次感谢您的回答。遥控器设置得很好。唯一的例外是ssh调用的是一个用户名git,我想我们并没有创建它。它要求输入密码的事实是一种误导。在这种情况下,您或者没有将ssh公钥添加到gitlab,或者如果添加了ssh公钥,则没有使用ssh代理在本地机器上注册它。使用gitbash并键入eval$ssh agent-s。如果它返回pid,则使用ssh add ~/.ssh/id_rsa并在同一会话中尝试推送它。在该注释中~/.ssh/id_rsa是生成的私钥所在的位置。ssh代理返回代理pid 3168。文件名.pub或.ppk称为ssh gitlab。我应该换吗?我用那个名字写了一封信,并在加载密钥时返回了它。。。无效格式