您当前的位置: 首页 >  git

Allen Su

暂无认证

  • 1浏览

    0关注

    431博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Git 教程系列第 20 篇】ssh: connect to host github. com port 22: Connection timed out 的解决方案

Allen Su 发布时间:2020-03-09 20:58:44 ,浏览量:1

这是【Git 教程系列第 20 篇】,如果觉得有用的话,欢迎关注专栏。

最近两周在用 TortoiseGit 从远端拉取项目,以及从本地向远端推送项目时,总会报如下错误 在这里插入图片描述 因为多尝试几次又可以拉取和推送了(使用 Git 客户端也是这样),以为是因为最近疫情的影响,大家都宅在家里,所以网速比较慢,就没把这当回事。

但公司的电脑一直没有这个问题,这让我觉得可能不是因为网速。果然,踏破铁鞋无觅处,今天终于把这个问题给解决了。

第一步 在自己公钥的路径下,新建一个 config 文件,注意没有后缀名(之前我并没有 config 文件,这个也是新建的,如果你之前就有,请无视这句话)。 在这里插入图片描述 然后打开该文件,输入如下内容,然后保存文件

Host github.com
User "这里填自己注册 github 时的邮箱地址"
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443

第二步 打开 Git 客户端,输入 ssh -T git@github.com 命令来验证一下是否连接成功 在这里插入图片描述 如果你的也出现了这段话,恭喜你,你的问题也解决了。

以下属于扩展内容,感兴趣的可以看看

扩展一: 先对第一步 config 文件中的内容做下简单说明

名称解释说明Host github.com服务器地址为 github 地址Hostname ssh.github.com服务器地址为 github 地址PreferredAuthentications publickey采用公匙IdentityFile ~/.ssh/id_rsa公匙文件路径Port 443修改端口为 443

扩展二: 关于第二步的 You’ve successfully authenticated, but GitHub does not provide shell access 这段话,我也查了一下资料

这段话翻译成中文是:您已成功通过身份验证,但是 GitHub 不提供 Shell 访问权限。

首先,这不是一个错误,而是 github 给的一句提示语,ssh -T 的意思是不显示终端,只显示连接成功信息。

虽然我们无法使用 ssh 协议直接登录 github,但当我们在使用 ssh 协议连接到自己或者其它服务器时,本地终端会显示命令提示符,我们可以在上面输入 ls 等命令进行操作,相当于在 github 服务器上建立了一个伪终端。

你的问题得到解决了吗?欢迎在评论区留言。

赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。

结束语 技术是一点一点积累的,大神也不是一天就可以达到的。原地不动就是退步,所以每天进步一点点。 最后,附上一句格言:"好学若饥,谦卑若愚",望共勉。
关注
打赏
1656491068
查看更多评论
立即登录/注册

微信扫码登录

0.0359s