当你使用了各种代理软件访问诸如Github、Google、油管、推特这些网址,你会发现基本可以访问,只不过是访问速度不同,但是不管你使用什么代理软件,你的git clone指令从Github远程库下载库的速度都不会受到影响。
当使用代理软件访问诸如Github、Google、YouTube和Twitter等网站时,代理软件会通过中继服务器来转发你的网络请求。代理服务器可以帮助绕过网络封锁、提供更快的访问速度或提供匿名性。
然而,对于Git克隆命令(例如`git clone`),它是使用Git协议进行通信的,而不是使用常见的HTTP或HTTPS协议。Git协议使用的是自己的网络端口(默认为9418),而不是HTTP(端口80)或HTTPS(端口443)。
因此,当使用代理软件时,代理服务器可能只会处理HTTP和HTTPS流量,并不会拦截或修改Git协议的流量。这就是为什么你观察到无论使用什么代理软件,Git克隆命令从Github远程库下载的速度都不受影响的原因。
需要注意的是,代理软件通常会影响其他基于HTTP或HTTPS的网络请求的速度,因为它们会介入并中继这些请求。但是对于Git克隆命令,由于它使用Git协议,代理软件并不会干涉其通信流量。
这时候就要改变Git本身的配置,让git的默认端口号和你代理服务器的监听端口号一样。
比如我的代理服务器的监听端口号8888
监听地址是本机的回环地址
git config --global https.proxy http://127.0.0.1:8888
git config --global http.proxy 'socks5://127.0.0.1:8888'
git config --global https.proxy 'socks5://127.0.0.1:8888'
检查代理设置
git config --get http.proxy