git clone github_GitHub为什么连接缓慢以及解决方法

5e398f8f27fe52bfc6a33fa09a7f9e3c.png

本文首发在我的个人博客中:

个人博客|沧沧凉凉的小站​www.cclliang.com

1. 前言

之前有一篇文章介绍了Git的使用方法:项目或者文件管理神器-Git。

一般对于电脑有一定认知的人都会知道GitHub,但是因为GitHub的服务器在国外,所以有时候连接速度非常的感人。

我们通过ipip.net的路由跟踪来看一下我们访问GitHub走的线路。

d22819e28ff4ab27342356ec62662b61.png

可以看到在广州出口走的骨干网到新加坡的服务器,这就是为什么访问GitHub有时候会异常缓慢的原因,尤其是在晚高峰时期,通过骨干网出口的数据量过于庞大,电信还会选择权重不高的用户进行丢包,从而缓解骨干网拥挤的问题。

具体的服务器和线路详解可以参考:VPS的各种线路到底有什么区别

2. 终极解决办法

看了网上有非常多的帖子说修改host,但是我个人认为,修改host并不能解决骨干网晚高峰拥挤的问题。

终极解决方法是通过代理服务器。

首先你需要有一个境外的服务器,参考VPS的各种线路到底有什么区别该文章中讲解的服务器,或者你有其它的代理软件也可以,但是连接代理服务器时的出口线路一定不能是骨干网,不然跟直连没有任何区别,依然连接缓慢

关于代理服务器这里就不详细讲解了,这篇文章着重讲解如何通过代理服务器来连接GitHub,从而摆脱缓慢的Clone速度。

2.1 代码

# 设置ss
git config --global http.proxy socks5://127.0.0.1:1080

git config --global https.proxy socks5://127.0.0.1:1080

# 设置代理
git config --global https.proxy http://127.0.0.1:1080

git config --global https.proxy https://127.0.0.1:1080

# 取消代理
git config --global --unset http.proxy

git config --global --unset https.proxy

# 仅代理GitHub
git config --global http.https://github.com.proxy https://127.0.0.1:1080

git config --global https.https://github.com.proxy https://127.0.0.1:1080

2.2 步骤

首先需要知道你的代理服务器使用的端口号,在你的代理软件上可以看到,一般是1080,但是Clash默认使用的是7890

  1. 打开Git命令窗口,该窗口安装Git后在文件夹中点击右键选择Git bash here就会出现:

d5760ed8a6ccd8cf6ac56465f8ea7e27.png

2. 输入git config --global http.proxy socks5://127.0.0.1:1080点击回车。(1080需要填写你的代理软件使用的端口号,我的是7890

82f9bfcb6f85a79b18559f43312e87f3.png

3. 没有任何消息就是最好的消息,这个时候就设置完成了。

注意:其它的设置可以参考上面给出的代码。

3. 速度测试

3.1 没有用代理的速度

6c4e4ce66777406c1723e560887d7d00.png

3.2 用代理后的速度

设置完毕后,Clonegit push的速度就跟你代理服务器的质量密切相关。

fde5446f02ff8378efe96da7e09595ad.png

4. 使用镜像站

该方法仅对git clone有用,对git push无效,并且无法登陆账号,私人项目无法进行Clone

比如Clone Vue项目,项目地址:https://github.com/vuejs/vue.git

则将地址改为https://github.com.cnpmjs.org/vuejs/vue.git

4.1 速度

986d4119cc4e8f1d97c5eb3d25541026.png

只需要在Clone时将项目地址中的github.com改为github.com.cnpmjs.org,就可以使用镜像站。

那么为什么该镜像网站会这么快呢?我们再次通过ipip.net的路由跟踪测试一下:

66d6cfde7d48ac2445cf4a5295398a8f.png

可以看到,在省级城市已经走上了59.43开头的线路,说明该服务器用的是CN2 GIA的线路,所以拥有这么快的传输速度完全不奇怪。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值