今日在学习git操作的时候,往远程库github库push代码时报错:
ssh: connect to host github.com port 22: Connection refused解决方案
查阅网上资料,发现了这几种做法:
方法一也是网上大多数文章的做法,在C:UsersUsername.ssh目录下新建一个.config文件,文件内容:
Host github.com UserHostname ssh.github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa Port 443
可不知为何我还是报错了。。。
方法二根据英文可以看出,ssh端口号被拒绝了,而连接git远程仓库的两种协议分别为ssh和https,第一种协议被禁掉后,只能换一种连接进行合并本地仓库了。这也是一种简单粗暴的方法。
先查看现存的远程仓库的配置:
$ git remote -v origin gitagithub.com: Sososoby/learngit.git (fetch) origin git@github.com: Sososoby/learngit.git (push)
然后将它们移除掉:
$ git remote rm origin
重新以https协议的形式添加新的远程库
git remote add origin https://github.com/Sososoby/learngit.git
然后又尝试push了一下,又报错了,fatal !
实在是心累了,不想解决http到底为啥出错了,所幸终于找到了能解决我问题的方法。
方法三(适用于我的方法)同样是修改config,但是是修改下面这个文件(Git默认安装目录)
C:Program FilesGitetcsshssh_config
在末尾添加以下内容:
Host github.com UserHostname ssh.github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa Port 443
然后保存就成了,乐。