記錄一下我碰到的git clone項目失敗問題
一、網上解決方案
桌面右鍵選擇git bash here,輸入以下命令:
# 為 git 添加配置項 # 在這之前可以執行 git config -l 命令看看已有配置項有哪些 git config --add core.compression -1
或者在用戶目錄下.gitconfig文件里添加:
[user] name = Ggicci email = ... [core] compression = -1
或者你可以谷歌的話,可以參考以下兩個網址:
說明:compresssion其他取值可以查看此網站:https://mirrors.edge.kernel.org/pub/software/scm/git/docs/git-config.html
compression是壓縮的意思,從clone終端輸出知道,服務器會壓縮目標文件,然后傳輸到客戶端,客戶端再解壓。取值[-1,9],-1以zlib為默認壓縮庫,0表示不進行壓縮,1-9是壓縮速度與最終獲得文件大小的不同程度的權衡,數字越大,壓縮越慢,得到的文件越小。
二、以上解決方案都沒有解決我的問題
1.關閉壓縮
git config --global core.compression 0
2.然后執行部分clone
git clone --depth 1 https://github.com/xxxxxxxxxxxxxx.git
。
3.如果成功,clone剩下的代碼:
git fetch --unshallow
4.以后執行pull
git pull --all
出錯原因應該是git版本的問題,msysgit版本1.8.x導致的,因此另一個解決的辦法是使用git早起版本,比如git 版本小於1.8.3。
執行完這個流程后我的問題解決了。。。
參考:https://stackoverflow.com/questions/21277806/fatal-early-eof-fatal-index-pack-failed