我在 NGINX + spawn-fcgi 下有一个裸存储库。
现在我正在尝试将本地目录添加到远程 Git:
$ git init
$ git add *
$ git commit -m "Initial commit"
$ git remote add zeus http:/domain.com/new.git
$ git push zeus master
Counting objects: 5483, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5343/5343), done.
error: RPC failed; result=22, HTTP code = 500 | 2.82 MiB/s
fatal: The remote end hung up unexpectedly
Writing objects: 100% (5483/5483), 463.89 MiB | 19.33 MiB/s, done.
Total 5483 (delta 1591), reused 0 (delta 0)
fatal: The remote end hung up unexpectedly
Everything up-to-date
在 NGINX 错误日志中我有:
32015/03/03 12:51:55 [crit] 21530#0: *1 writev() “/etc/nginx/client_body_temp/0000000001” 仅写入了 8184 个中的 4671 个,客户端:10.249.140.96,服务器:domain.com,请求:“POST /new.git/git-receive-pack HTTP/1.1”,主机:“domain.com”
NGINX 配置:
location / {
client_max_body_size 0;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_param GIT_HTTP_EXPORT_ALL "";
fastcgi_param GIT_PROJECT_ROOT /var/gitrepo;
fastcgi_param PATH_INFO $uri;
fastcgi_param SCRIPT_FILENAME /usr/libexec/git-core/git-http-backend;
fastcgi_param REMOTE_USER $remote_user;
include /etc/nginx/fastcgi_params;
dav_methods PUT DELETE MKCOL COPY MOVE;
dav_ext_methods PROPFIND OPTIONS;
}
答案1
$ git config http.postBuffer 524288000
如上所述,问题已解决这里