为什么要用代理
- 为查阅一些资料,很多技术论坛,开源站点都是外网的,需要代理才能访问。
- github 有的时候非常慢,pull / push 很容易卡着,让人极其难受。
npm install 拉依赖的时候非常慢,这种情况也是网络的原因,需要网络代理来优化
解决实际性的问题
- 找到代理端口
我用的端口默认是 7890,确认你的端口。
export https_proxy=http://127.0.0.1:33210 http_proxy=http://127.0.0.1:33210 all_proxy=socks5://127.0.0.1:33211
可以看到,http / https 代理的端口号都是 33210.
- github 设置网络代理
http 和 https 协议的 git 代理,打开终端,在任意目录下执行如下命令(按需选择一种即可)
第一种:设置所有 git 操作都走 clash 代理// 添加代理 git config --global http.proxy socks5://127.0.0.1:7890 git config --global https.proxy socks5://127.0.0.1:7890 // 取消代理 git config --global --unset http.proxy git config --global --unset https.proxy
第二种:仅 github.com 走 clash 代理,因为可能有的朋友公司内网的 git 仓库无需走代理
// 添加代理 git config --global http.https://github.com.proxy socks5://127.0.0.1:7890 git config --global https.https://github.com.proxy socks5://127.0.0.1:7890 // 取消代理 git config --global --unset http.https://github.com.proxy git config --global --unset https.https://github.com.proxy
可使用 git config -l 命令查看 git 的所有配置信息
ssh 协议的 git 代理
使用 vim 编辑 ~/.ssh/config,在文件最后添加配置//socks5 Host github.com User git ProxyCommand connect -S 127.0.0.1:7890 %h %p //http || https Host github.com User git ProxyCommand connect -H 127.0.0.1:7890 %h %p
使配置生效
source ~/.ssh/config
要取消代理的话,只需要删除对应配置,然后执行 source ~/.ssh/config即可。
npm 设置网络代理
// 设置代理 npm config set proxy=http://127.0.0.1:7890 // 删除代理 npm config delete proxy
至此,你的 git pull / git push / npm install 再也不会卡着一动不动的了,赶快快试试吧