git push报错error

今天用git push到远程阿里云服务器遇到一个非常奇怪的错误。


错误信息

git push: pack-objects died of signal 13 Counting objects: 26, done. Delta compression using up to 2 threads. Compressing objects: 100% (19/19), done. Write failed: Broken pipe19) fatal: The remote end hung up unexpectedly error: pack-objects died of signal 13 error: failed to push some refs to ‘git’


原因

由于使用的是阿里云服务器,之购买了2G的内存,服务器内存过小导致。由于使用gitlab服务器,而gitlab非常消耗内存,服务器2G的内存所剩无几。


解决方案

重启服务器后OK。随着服务器访问量的增加,可以适当增加内存配置等。
还有一种方案,使用gerrit替代。同比下gerrit消耗更低内存。
关于gitlab和gerrit安装可以参考 git服务器的安装与配置