分享一個克隆自己在github上的代碼倉庫(體積比較大)出現一直在接收對象的問題的解決辦法。
一,問題出現:
由於自己的不小心把本地的一個代碼庫給刪除了,這個庫上傳過幾個80MB的大文件,使用git clone命令想把遠程庫克隆一份下來,結果出現一直在接收對象中,只好ctrl + c 暫停。(不暫停的話,最終也能把整個庫克隆下來,只不過會耗費比較多的時間)
$ git clone https://github.com/zyingzhou/pdfcatalog.git
正克隆到 'pdfcatalog'...
remote: Enumerating objects: 88, done.
remote: Counting objects: 100% (88/88), done.
remote: Compressing objects: 100% (58/58), done.
^C收對象中: 15% (27/174), 18.61 MiB | 31.00 KiB/s
二,解決問題
git clone 會將自己從倉庫初始化到最後一次提交的代碼,文件都會克隆下來。而中途我已將大文件刪除了,且又提交過幾次。因此我只需將最近的一次提交克隆下來即可。使用--depth來指定深度,--depth 1表示最近的一次提交。
$ git clone --depth 1 https://github.com/zyingzhou/pdfcatalog.git
正克隆到 'pdfcatalog'...
remote: Enumerating objects: 10, done.
remote: Counting objects: 100% (10/10), done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 10 (delta 0), reused 5 (delta 0), pack-reused 0
展開對象中: 100% (10/10), 完成.
最近的一次提交中沒有大文件,因此倉庫不大,幾秒鐘便克隆下來了。