git clone时出现ssh connect to host github.com port 22 Connection timed out

最近被Git这个软件 折磨得很惨,不知道为森么,在实验室台式电脑上利用ssh下载github上的东西完全没有问题,但是公司电脑各种幺蛾子,在尝试了许多解决方法之后只能另辟蹊径,下面自己总结归纳一下。

  起因是酱紫:我想在公司电脑上下载[email protected]:tianocore/edk2.git ,因为是git开头,所以git clone的时候h是用ssh公钥来下载。但是很神奇的是,我下载失败了,在git bash窗口中敲了git clone [email protected]:tianocore/edk2.git 之后就出现了下面的问题:

git clone时出现ssh connect to host github.com port 22 Connection timed out_第1张图片

经过ssh -T [email protected]测试ssh是否配置成功发现,额,报错了:

git clone时出现ssh connect to host github.com port 22 Connection timed out_第2张图片

  天哪,我尝试了网上几乎所有说的解决方法,比如检查port是不是22端口,比如在.ssh中加了一个config文件,等等,都不行,总之就是这个公钥虽然添加到github中,但是github上显示never used。添加公钥的环节肯定没有问题,因为我在自己实验室电脑上已经成功添加,而且经过测试之后是可用的。但是因为每天都要用公司电脑,所以不可能天天回到实验室再下git@开头的链接。但是幸运的是我发现公司电脑上下载https://开头的链接是没有问题的。终于,机智的我发现了即使手头虽然只有一个git@开头的链接,也是可以把它转化成http://开头的链接的,经过比对github上的其他z资源链接,,比如下面这两个:

git clone时出现ssh connect to host github.com port 22 Connection timed out_第3张图片

git clone时出现ssh connect to host github.com port 22 Connection timed out_第4张图片

也就是说除了经git@换成https://,还有个地方要注意,就是域名github.com后面的冒号:要换成斜杠/。

于是,在我发现一条路不通之后,终于成功的绕路走,因为最终目的还是能够下载链接嘛:

git clone时出现ssh connect to host github.com port 22 Connection timed out_第5张图片

终于成功下载好了

你可能感兴趣的:(git)