方法一:
作为开发人员, GitHub 是大家的标配了, 常常会苦恼于 gitclone 某个项目的时候速度太慢, 看着控制台那几 K 十几 K 的龟速, 吐血!!
原因很简单: GitHub 的 CDN 被伟大的墙屏蔽所致.
所以解决方案也很简单, 就是手动把 CDN 和 ip 地址绑定一下.
.
1. 获取 global.ssl.fastly 地址
访问
获取 cdn 域名以及 ip 地址
.
2, 获取 GitHub 地址
访问 http://github.com.ipaddress.com/#ipinfo
获取 cdn 域名以及 ip 地址
.
3, 打开 hosts 映射
Windows 环境
C:\Windows\System32\drivers\etc\hosts
最末尾添加两句话:
- 151.101.185.194 http://github.global.ssl.fastly.net https://github.global.ssl.fastly.net/
- 192.30.253.112 http://github.com https://github.com/
然后保存就可以了.
.
.
.
Linux 环境
sudo gedit /etc/hosts
添加
- 151.101.185.194 http://github.global.ssl.fastly.net https://github.global.ssl.fastly.net/
- 192.30.253.112 http://github.com https://github.com/
保存, 退出, 并重启网络
/etc/init.d/networking restart
方法二:
利用开源中国提供的代码仓库
标题已经说的很清楚了, 我想对于经常使用 Git 的人来讲, 很可能已经知道了. 对于新手刚接触 Git 的人来讲, 可能你只知道 GitHub.
.
实际上, 国内也有很多代码仓库提供方, 国外也不只 GitHub. 只不过国内也是刚刚开始, 关注的人不多.
开源中国提供的代码仓库提供了一个功能, 就是它可以将 GitHub 账号中的代码 clone 到开源中国的账户中去. 这个代码仓库叫做 码云 , 没错就是码云?.
要求你有一个 GitHub 账户, 一个码云 gitee 账户.
步骤很简单
.
将 GitHub 上面你想要搞下来的项目首先 frok 到你自己的 GitHub 的账户中去. 耗时: 一瞬间
登录 gitee, 没有的自行注册. 网页中有添加项目的按钮, 一个加号. 点击加号, 下拉列表里面有 迁移 GitHub 项目 的选项, 点开后按照提示关联自己的 GitHub 账号, 之后选择你要迁移的项目, 按提示操作. 耗时: 不到三分钟.
按照 clone GitHub 项目方法, clone 迁移到 gitee 账户中的项目. 区别是 clone 链接换成了目标项目在 gitee 中的链接. 通常下载速度是以 MB/s 为单位的.
按照上面的方法, 基本上不再需要整夜挂机 clone 代码了.
.
方法三:
提高下载子模块的速度
有的项目里用到了第三方代码仓库, 但是在你使用 clone 指令的时候这些子模块 submodule 并不会自动下载, 因为他们在另外的地址中存放. 你需要 clone 完目标项目后, 执行
- .
- Git submodule update --init --recursive
- .
才会将目标项目所需要的依赖子模块下载下来. GitHub 项目中所用到的子模块依然是放在了 GitHub 上. 这就很悲剧了, 这意味着你在执行上面指令后, 依然需要面对上面的 20KB/s 的速度. 虽然此时并不会显示出来, 然而等待依然很久.
.
我们同样使用上面加速 clone 的思路.
.
从下载的项目中找到其使用的 submodule 的链接是哪里.
打开上一步中的链接, 将使用的目标子模块的代码同样 frok 到自己的 GitHub 账户中, 之后同样的方法迁移到 gitee 中去. 有多个子模块就多重复几次操作, 同样的套路.
将原项目使用的 submodule 模块的链接地址修改为子模块迁移到 gitee 中后的地址.
这时再去执行
- .
- Git submodule update --init --recursive
- .
恭喜你, 部署完成!
来源: http://www.bubuko.com/infodetail-3281926.html