git突然连不上github解决方案
# git 连不上 github 解决方法归总
# 场景回顾
晚上写完代码准备推送休息了,突然推送报错 ,第一时间当然是检查网络了,因为国内访问 github 需要科学上网的吗!
1 检查了我的代理发现没问题
2 用浏览器访问了 github,可以正常访问,然后我就重新推送咯,结果还是不行,就很纳闷了
3 然后用终端 ping 了一下 github 的地址 ,发现居然 ping 不通,然而浏览器却可以访问
4 查了报错信息 ssh: Could not resolve hostname github.com: No address associated with hostname 连不上目标主机,
清空了 DNS 缓存 ipconfig/flushdns ,改了 C:\Windows\System32\drivers\etc 下面的 hosts 文件 添加了对 github 的解析 ,然后能 ping 通了,赶紧推送
5 结果白高兴一场,又报 Open ssL 什么错误 ,又去 C:\Users\【主机名】 下面给了 .gitconfig 配置文件 还是不行
6 以为是验证上面出了问题 又重新生成了 key 密钥 ,替换旧的,结果还是验证失败
7 给 git 添加代理
添加
git config --global http.proxy http://127.0.0.1:1080
git config --global https.proxy http://127.0.0.1:1080
移除
git config --global --unset http.proxy
git config --global --unset https.proxy
2
3
4
5
6
7
# 我的解决方法
后面是通过在虚拟机获取到 GitHub.com 的 ip 添加到 C:\Windows\System32\drivers\etc 下面的 hosts 再通过 ssh -T git@github.com 验证,通过之后,把.ssh 下面的 known_hosts 替换到真实主机得以解决 , 场景不同解决方法也不一样,上面的方法都可一试
# 总结
# 方法 1
给 git 添加代理 git config --global http.proxy http://127.0.0.1:1080
# 方法 2
给本地主机添加解析 C:\Windows\System32\drivers\etc 下面的 hosts 文件
# 方法 3
我那个方法不过有点麻烦 ,可以去朋友电脑上拷贝一份文件,因为我电脑刚好有虚拟机所以正好,其实因该还是验证这块出了问题