前言
前段时间不小心使用了rm -rf,删除了Documents所有文件,WTF,好在没有删除 ndk和sdk,不然就要花费大量时间。
大部分文件都是代码可以重新clone下来,使用了恢复软件来解决 https://zhuanlan.zhihu.com/p/54066195,
感觉有点鸡肋,
一是 大部分文件名被格式化了,不知道对应的哪个文件;
二是 知道文件名的恢复后发现里面的内容没有了
三是 每天只有100M的恢复额,但是对于只有部分文件需要的人应该足够了
基于种种原因,没有恢复文件。
问题
回到主题,当我重新clone代码的时候,出现了如下错误:RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
起初以为是网络不好,后来查原因是由于,项目太庞大,有90M多点,需要使用SSH的方式来拉取。
使用SSH方式拉取代码
基于Mac环境
进入GitHub后台配置SSH页面
生成后的秘钥将会在这里配置,如果不正确也会有提示,不用担心配错的问题
生成SSH key
在用户主目录下,看看有没有.ssh
目录,如果有,再看看这个目录下有没有id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开 Shell(Windows 下打开 Git Bash),创建 SSH Key:
$ ssh-keygen -t rsa -C "[email protected]"
把上述邮箱替换成你自己GitHub登录的邮箱,然后一路回车,也可以不输入密码,如果安全级别要很高可以设置,一般不用。
如果一切顺利的话,可以在用户主目录里找到.ssh
目录,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是 SSH Key 的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
官方SSH操作配置流程
https://help.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh
看官方文档妥妥的。
结果
结果是我使用官方文档配置后,再使用SoureTree拉取ssh代码并不能成功,我太南了。。
经过了差不多一周的时间,今天终于拉下来了!
还是那个原因,仓库内容太大,网速太慢。今天刚到公司就开始拉代码,然后拉下来了,可能是刚上班用网的人不多。。。