Clone与Deploy等操作后,出现OpenSSL SSL_read Connection was reset, errno 10054的问题

首先检查github.com/settings/keys中是否有SSH Key,若没有则进行以下的操作,若有可以忽略第一、二步。

(1)新建 SSH key,在git shell(或者git bash等命令窗口),注意大小写:

1
$ ssh-keygen -t rsa -C "useremail"

useremail指的是你的Github账户的邮箱地址。如果你的对应的Github项目在创建时没有设置密码,你可以在输入命令后无视提示,一路回车。否则你需要在

1
2
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

出现时输入你设置的密码。

(2)打开id_rsa.pub文件,这个文件即刚刚你新建的 SSH key (一般位于C盘用户文件夹的.ssh文件夹内),用记事本打开它然后全选复制。

之后在github.com/settings/keys 中 New SSH key,title可留空也可任意填写,将刚刚复制的内容粘贴在key文本框内,点击确定。

(3)输入命令

1
$ ssh -T git@github.com

来检测 SSH key 是否配置成功,期间可能会有提示你输入yes或no的提示,直接输入yes一路回车即可。

1
2
Hi username! You've successfully authenticated, but GitHub does not 
provide shell access.

出现这个就代表成功啦。

(4)接下来在命令窗口输入

1
2
$ git config --global user.name "username"
$ git config --global user.email "useremail"

username是Github项目对应的用户名,useremail就是对应的邮箱地址。

(5)至此 SSH key的配置结束,如果还是出现了原来的问题可以在出现错误后输入下面这个命令

1
git config --global http.sslVerify "false"

另外如果使用了Clash、ShadowsocksR等代理软件,请务必先将这类工具关闭。

针对网络不畅引起的这个问题,可以安装DevSidecar使用Git.exe代理。