使用Git拉取代码时报错Connection reset by 20.205.243.166 port 22

报错代码如下:

1
2
3
4
5
Connection reset by 20.205.243.166 port 22
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

百度搜了很多方法,如下:

  • 重新生成ssh密钥

  • 修改22端口为443

  • 修改git用户邮箱设置

  • 删除 known_hosts 中有关 Github相关行

  • 将网络切换为手机热点(确实有效,治标不治本,怀疑公司内网问题)

  • 修改clone方式为https(应该有效,没试,治标不治本,而且项目多时太麻烦)

今天又遇到了,突然回过神来,公司以前一直是可以正常使用的啊,那绝不可能是公司内网问题

遂放弃百度搜索,换用谷歌大法,终于找到了根本原因

可参考 无法 push 到 Github 了,有人知道为什么吗?macOS 给 Git(Github) 设置代理(HTTP/SSH)

归根结底是电脑代理问题导致,那么问题就好解决了 —— 给Git设置代理即可

修改 C:/用户/.ssh/ 目录下的 config 文件

1
2
3
4
5
6
7
8
Host github.com
port 22
User git
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
# 添加下面这一行,端口号为你开启代理的端口号,这里7890是Clash默认端口号
ProxyCommand connect -S 127.0.0.1:7890 -a none %h %p