这两天在mac上使用git push命令一直无响应,直到超时出现如下报错,非常让人烦躁。

ssh: connect to host github.com port 22: Operation timed out
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

首先感觉是代理出了问题,找到自己的ip和端口号后使用git config修改,还是一样的报错,只不过port从22变成了我的7890,开始怀疑人生了。

kex_exchange_identification: Connection closed by remote host
Connection closed by 127.0.0.1 port 7890
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

但是在进行以上操作时,浏览器可以正常进入github,说明不是网络问题。使用ssh命令测试端口443能不能连上:

ssh -T -p 443 git@ssh.github.com

结果是可以的:

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

看来是端口的问题,因为22是默认的端口。尝试讲端口设置为443是否能解决问题。

cd ~/.ssh
nano config

复制以下内容:
 

Host github.com
  User 注册github的邮箱
  Hostname ssh.github.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa
  Port 443

如果使用nano编辑器,按下 Ctrl + X,然后按 Y 确认保存,最后按 Enter 退出。

重新测试,发现可以运行:

ssh -T git@github.com

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

问题解决!再试一下能不能push了

完美解决!!!

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐