一、 问题
今天在用pycharm写完代码推送到github的时候,老是报错
OpenSSL SSL_connect: Connection was reset in connection to github.com:443
二、两种可能的解决办法
1. 关闭代理
- 像是代理出错,在项目根目录运行如下命令
git config --global http.sslVerify false
或者
git config --global http.sslBackend "openssl"
# 参数要换成你本地电脑上git的安装路径
git config --global http.sslCAInfo "C:\Program Files\Git\mingw64\ssl\cert.pem"
Git支持三种协议:git、ssh 和http ,本来push的时候应该走ssh隧道的,如果设置了http代理,就无法提交了。这个时候需要关闭代理。然后重新提交可以了 (到现在为止,网上的解决办法前篇一律,但是并没有解决我的问题)
运行完这个命令之后,还是报错。
- 继续,这个时候又有解决方案说,在windows 命令行清空下DNS缓存
然并卵~ 继续报错403
2. 更新git凭证管理器
- 突然想到,我并没有在本地开启VPN之类的代理,上面设置肯定是无效的啊。。。。╮(╯▽╰)╭
- 那就有可能是第二种问题引起的,就是我的SSL证书被禁了
- 我的git 版本是2.30.2
查了下 github 禁用了TLS v1.0 和 TLS v1.1 虽然我不知道我的本地的TLS(安全传输协议)是什么版本,但是我觉得应该是这个原因了。然后就更新下 git凭证管理器
Github 地址 Git-Credential-Manager-for-Windows
下载完之后,双击安装一下就可以。 然后PyCharm 就可以将代码提交到github的代码仓库中了。
两句废话
- 大部分的时候,关闭代理就可以正常的将本地代码push到代码仓库中
- 如果正常的运行了关闭命令,但是依然无效,就可以考虑是不是TLS版本过低,被禁掉了,这个时候使用第二种方法,更新一下git凭证管理器 ,应该就OK了
~
以上还不行,起来看看是不是女朋友把路由器网线拔了。╮(╯▽╰)╭