写本文原因:Git 太慢。看最后,14 KiB/s
首先拥有一个代理服务器
代理分为正向代理和反向代理,
正向代理就是代理用户端,改变用户端的身份(IP)。
反向代理就是代理服务端,改变服务器的身份(IP)。
目前的代理大多数用的都是正向代理。
获得服务器方法很多,不讲了,然后你就可以通过软件转发流量来进行“代理”
这里使用 ShadowsocksR 配置一个本地 HTTP 代理。
然后,设置代理
运行SSR,在软件中添加已获得的服务器,然后进行一些常见的设置如 PAC 。
Tips:PAC:Proxy Auto Config
然后 Win + R
,输入 inetcpl.cpl
或是找到系统设置里面的代理设置,可以看到类似这样子的界面:
这样子就是说明本地 1080 端口正在被代理软件使用。
然后,修改 Git 配置
git 客户端可以使用代理来改善连接速度,Git 的所有配置都是存储在一个文件中的,可以通过修改配置文件或者通过 Git 命令行来修改配置。
Git 命令行主要有几种存在形式:
- Windows命令行调用,主要是Windows安装版 Git 或在有 Git 的文件夹中运行 Git
- 软件自带的 Git,这种多是在开发工具或 IDE 中,提供一个 Git 的命令行,如 Visual Studio、Git desktop 等,可能是自带了一份 Git 副本,可能是调用系统的 Git。
- Linux 系统中的 Git ,Linux 系统大多自带 Git 命令
Git 的配置文件是一个名字叫 .gitconfig
的文件,上述的第1、3种的配置文件比较好找,第二种就存在不确定性。
在Windows中,.gitconfig
在 %userprofile%
文件夹,即用户文件夹。用notepad++ 打开,看起来像这样子:
在Linux中,.gitconfig
在 ~
文件夹,即用户文件夹,看起来像这样子:(截图为 WSL Ubuntu16.04 + Windows Terminal )
已知本地端口的情况下,(比如我的是1080),可以配置文件手动添加如下内容:
1 | [http] |
注意修改后格式像图中即可
另一种方式是在 Git 命令行设置,上面的三种情况都可以使用。
打开命令行,输入:
1 | git config --global https.proxy http://127.0.0.1:1080 |
如果要取消代理设置,输入:
1 | git config --global --unset http.proxy |
(打开配置文件会发现对应的也自动修改好了)
然后就可以打开命令行开始 git clone 辣。
请注意 Github 的两种 clone 方式的区别:
https 方式,是通过本地的 http 链接,是会通过代理软件的
ssh 方式,是通过 ssh.exe 收发流量,不会通过代理软件,所以依然很慢
(截图为我开始 ssh 方式 clone 的时候,网络防火墙提示 ssh.exe 联网)
用 https 方式速度就会达到接近带宽的峰值。比如我们来 clone 一个 ctf-wiki