问题
春节放假上来,修改了下代码,想push到github,没想到发生了如下错误:
error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
明明放假前还成功push过,一下子懵圈了。
本地环境
这边我的本地环境是 win8.1 + tortoisegit/pycharm + git v2.4
解决方法
google了一下,发现github 2月1日发了个公告Weak cryptographic standards removal notice,简而言之就是不支持TLSv1/TLSv1.1,网上查到的解决办法主要有2种:
- 更新git和tortoisegit至最新版,git最新版(下载地址)是2.6.2,一般做到这里就可以了,但是这步做完我的问题还没有解决
- 检查TLS版本
git config http.sslVersion
如果是tlsv1.0,则用下面一句命令行更新至tlsv1.2
git config --global http.sslVersion tlsv1.2
但是我执行完这步,还是报错!
3. Visual Studio的设置修改如下:
https://developercommunity.visualstudio.com/content/problem/201457/unable-to-connect-to-github-due-to-tls-12-only-cha.html
看到vs要设置,我想是不是tortoisegit/pycharm也要设置,问题可能在tortoisegit设置上,所以我直接使用命令行操作git,终于成功了!
git push origin master
关于tortoisegit一开始更新至最新版没成功的问题
重装了一遍tortoisegit,终于发现问题。
原来我的Git.exe Path是c:\program files(x86)\git\bin,而最新版git我安装的是64位版本,路径改成下面就可以了!