如题,push 上去获得的响应要么是 Timeout 要么是 Connectiong reset.但偶尔会 push 成功。我平时习惯开着 clash ,也是时而成功时而不成功。而且我开着与不开着 clash 都尝试过。然而我把电脑晾个五六分钟就又可以成功 push 一次两次。请问有什么解决方法呢。已尝试过网上的方法都不管用。测试时用过校园网和手机热点,情况都一样
1
fortynine Nov 30, 2021 via Android
clash tun
|
3
virlaser Nov 30, 2021
用的 clash for Windows ,git 流量默认不走 clash ,可以开个 socket 端口来提供代理,让 push 的流量走 clash
# 设置代理 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 但是上面比较麻烦,每次都要设置。因此需要找个办法让流量强制走 clash ,就是用 clash 的 tun 模式,虚拟张网卡,接管所有流量。下面是 clash for Windows 的文档。 https://docs.cfw.lbyczf.com/contents/tun.html#windows |
4
gadfly3173 Nov 30, 2021
@virlaser #3 不需要每次开了再关把。。可以设置 DOMAIN-SUFFIX 之类的,只代理特定域名就好了
|
5
HongJay Nov 30, 2021
对的。和楼上一样让 git 走代理就好了
|
7
Leoscott OP |
9
virlaser Nov 30, 2021
@Leoscott 我的理解是这样的,你打开 clash 后,clash 会修改系统的代理,把系统的代理指向 clash 起的代理服务器,浏览器默认会读取系统代理,因此使用浏览器的流量就会被正常代理;但是 git 不会去读取系统的代理设置,所以需要手动设置 git 的代理。
如果 git 的流量已经经过了代理还是不行,需要考虑下是不是梯子不太稳定。我这边代理了 git 的流量后,clone 下载的速度都可以把宽带跑满的。 |
10
Leoscott OP @virlaser 系统的代理修改为了 127.0.0.1 localhost 。git 可能真的没有经过 clash(多次尝试 push ,clash 中没有出现与 github.com 的 connection)。梯子倒是一直稳,因为浏览器里开网页没问题
|