跳到主要内容

git clone 大型项目优化速度

从GitHub上获取项目,有些项目很大,网速很慢。如果可以快速获取到项目呢

方法1 只获取最新代码​

如果只是研究学习一下,可以不获取 git 提交历史,只获取最新的代码,可以试试 --depth=1 参数

这里以 VS Code 开源项目为例,commit数量达到了12.7万个,完整的是 936.30 MiB;

指定后可以大幅缩小下载体积,只获取最新代码是 21.65 MiB

# 下载完整版代码
$ git clone git@github.com:microsoft/vscode.git
remote: Enumerating objects: 1666608, done.
remote: Counting objects: 100% (1666608/1666608), done.
remote: Compressing objects: 100% (538135/538135), done.
remote: Total 1666608 (delta 1076072), reused 1666608 (delta 1076072), pack-reused 0
Receiving objects: 100% (1666608/1666608), 936.30 MiB | 13.62 MiB/s, done.
Resolving deltas: 100% (1076072/1076072), done.

# 只获取最新的代码
$ git clone git@github.com:microsoft/vscode.git --depth=1
remote: Enumerating objects: 9660, done.
remote: Counting objects: 100% (9660/9660), done.
remote: Compressing objects: 100% (7907/7907), done.
remote: Total 9660 (delta 1511), reused 4116 (delta 1010), pack-reused 0
Receiving objects: 100% (9660/9660), 21.65 MiB | 5.38 MiB/s, done.
Resolving deltas: 100% (1511/1511), done.

方法2 使用国内镜像​

可以去 Gitee 极速下载 搜一下有没有想要的仓库,一般常见的仓库都是已经加入了

或者使用国内的代码托管平台做个镜像,再clone到本地

比如 gitee 的从 Github 导入仓库,输入链接,创建仓库,过一会儿就会同步过来,然后在 clone 到本地就快多了。

可以将这两种方式结合起来使用,效果更佳。