ssh: connect to host github.com port 22: Connection timed out
关于github报错connect to host github.com port 22: Connection timed out的解决
最近更新npm的时候出了点问题。重装node后,我本地git突然就无法同步和连接远程github的库了。
报错内容如下:
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
一开始看到这个信息的时候,我马上感觉是不是因为断网或者被墙了导致的连接失败。
网页登录github,发现一切正常并没有问题。
排除该问题之后我又测试了一下是否可以直接从终端连接github,结果如下
这结果就有点的尴尬了。我网页能上github查看我的远程库,本地git bash却连接不上。
这个时候我注意到了图中信息里的 port 22
是端口的原因吗?我照着网上的说法 用443端口连接了一次github,命令如下:
$ ssh -T -p 443 git@ssh.github.com
成功
看来问题和网络连接有关没跑了。我试着在网上查了一下关于改动git端口的方法,什么在git下的etc文件里改动ssh_config配置,什么在公钥的文件夹里面建个config文件之类的,好像也并没有什么用(可能是我方法不对)。
折腾了半小时后我找到了一个比较直接有效的解决方案:通过修改github连接方式,从之前设置的ssh方法转成https方法(我理解为登录操作)。命令如下:
$ git config –local -e //编辑本地git配置
将
url = git@github.com:你的用户名/仓库名.git
改为
url = https://github.com/你的用户名/仓库名.git
然后esc :wq保存修改回车
试着拉了一下远程的代码结果如下
文章来源于互联网:ssh: connect to host github.com port 22: Connection timed out
原文评论给出解决方法:在 ~/.ssh目录下创建个文件名为config的文件
Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
- Pingback: Git提交时提示“Please make sure you have the correct access rights and the repository exists.”的解决方法