我建了一個GitLab伺服器,作業系統是Mac OS X 10.9.2,上邊有兩個倉庫,之前兩個倉庫都可以正常clone,但是最近兩天突然發現有一個倉庫clone時,在本地機上遇到:
Cloning into 'gamil'...
remote: Counting objects: 426, done.
remote: Compressing objects: 100% (375/375), done.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
然後我檢查了GitLab裡的日誌unicorn.stderr.log
,發現
error: git-upload-pack died of signal 13
這個倉庫並不大,只有2M多。我查看了訊號13的意義:
terminate process write on a pipe with no reader
請問如何解決呢?
某草草2017-04-24 16:02:13
問題是由於nginx的tmp目錄對adim群組無權限所導致的。我的系統是Mac OS X,使用Homebrew安裝的nginx等軟體。之前一直在懷疑是超時問題,沒有發現某次Homebrew更新導致tmp權限問題。
另外對於較小倉庫好像是不用在tmp下建立文件,所以出現有個倉庫可以clone,而另一個不可以。
为情所困2017-04-24 16:02:13
有個說法是,git server的記憶體太小所造成的:http://stackoverflow.com/questions/1943914/git-clone-fails-with-index-pack-failed