【Git】push、clone等操作时出现fatal: unable to access“https://github.com/ ...”报错
前情提要
之前在英国学习了一段时间,在海外的时候GitHub十分丝滑。回国后连上“科技”尝试将代码push上GitHub出现了以下两种错误:
- fatal: unable to access“https://github.com/ ...” Failed connect to github.com port 443 : Timed out
- fatal: unable to access“https://github.com/ ...” Failed connect to github.com port 1080: Connection refused
报错原因
在网上查了很多原因大多数都说是因为代理引起的,要么就取消代理的设置,要么就手动设计以下代理的ip地址。都尝试过了没有用。但是错误原因应该是没有问题的,首先我ipconfig了本机ip地址,其次用git bash尝试链接报错中出现了另一个ip地址,这说明我在“科学”上网的过程中改变了ip但是本机识别不出来,这也是为什么链接会被拒绝。
解决办法
将http链接换成ssh链接。
个人猜测与思考
我本身对计算机网络协议研究的不太深入,不了解http协议和ssh协议的什么差异导致了这样的结果。根据我查到的资料产生如下想:http协议需要合适用户名和密码,因为密码是存在git的本地设置中的,在读取设置的过程中需要用到ip地址,但是由于在国内使用“科学”上网导致ip地址变更,所以读取失败了。ssh协议是通过密钥连接的,不需要用户名和密码,所以不会发生同样的问题。
参考
git传输时使用的两种协议ssh和http的区别_吨吨不打野的博客-CSDN博客_git http
git clone出现 fatal: unable to access 'https://github.com/...'的解决办法(亲测有效)_明天也要加油鸭的博客-CSDN博客

浙公网安备 33010602011771号