方法一:
作为开发人员,github是大家的标配了,常常会苦恼于gitclone某个项目的时候速度太慢,看着控制台那几K十几K的龟速,吐血!!
原因很简单:github的CDN被伟大的墙屏蔽所致。
所以解决方案也很简单,就是手动把CDN和ip地址绑定一下。
.
1.获取 global.ssl.fastly地址
访问 http://github.global.ssl.fastly.net.ipaddress.com/#ipinfo
获取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
192.30.253.112 http://github.com
然后保存就可以了。
.
.
.
Linux环境
sudo gedit /etc/hosts
添加
151.101.185.194 http://github.global.ssl.fastly.net
192.30.253.112 http://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
.
恭喜你,部署完成!
原文地址:https://blog.51cto.com/14322706/2449168