前言
有時候使用git clone指令去複製大專案時,會出現一些錯誤,導致相關的專案無法複製到目的端,在本篇文章則要試著解決該問題,並成功的把專案複製回來。
出現的錯誤
假設我們需要將Docker的官方文件透過「git clone」指令複製回來的話,有可能會出現下列的錯誤:
1 2 3 4 5 6 7 8 | $ git clone https: //github .com /docker/docs Cloning into 'docs' ... remote: Enumerating objects: 428789, done . remote: Counting objects: 100% (3343 /3343 ), done . remote: Compressing objects: 100% (1733 /1733 ), done . fatal: the remote end hung up unexpectedly4.66 MiB | 879.00 KiB /s fatal: early EOF fatal: index-pack failed |
會出現上述的錯誤,主要都是與網路問題有關,需切換到較好的網路則可以解決該問題,但是無法的切換其他網路,則需要試著修改「git」相關的設定。
1 | git config --global core.compression 0 |
試著關閉在複製專案時,複製壓縮的內容,但這會讓複製專案的過程變慢。
1 | git config --global http.postBuffer 524288000 |
在複製專案時,設定並加大較大的buffer size。
再試一次之後,則可以複製專案成功了。
1 2 3 4 5 6 7 8 | $ git clone https: //github .com /docker/docs Cloning into 'docs' ... remote: Enumerating objects: 428789, done . remote: Counting objects: 100% (3343 /3343 ), done . remote: Compressing objects: 100% (1732 /1732 ), done . remote: Total 428789 (delta 1911), reused 2713 (delta 1551), pack-reused 425446 Receiving objects: 100% (428789 /428789 ), 684.88 MiB | 3.85 MiB /s , done . Resolving deltas: 100% (271801 /271801 ), done . |