简单记录下GitHub SSH访问的配置

最近发现http方式pull和push都很容易出现下面的log:

1
2
C:\Users\xqkon\Documents\Work\xqtony.github.io>git push
fatal: unable to access 'https://github.com/xqtony/xqtony.github.io.git/': Failed to connect to github.com port 443 after 21068 ms: Timed out

找到的最可靠的方案是切换成SSH。

通过下面的命令生成公钥和私钥,邮箱记得替换成自己的。

1
ssh-keygen -t rsa -C "xxx@xx.com"

设置成功之后可以测试连通性:

1
ssh -T git@github.com

添加一下ssh方式访问,但是因为已经存在一个origin了,只能叫origin_ssh了。

1
2
git remote add origin_ssh git@github.com:xxxxxxxxxx.git
git push -u origin_ssh master

最好把remote的名字也修改了。

1
2
3
4
5
6
7
8
9
10
11
# list all remotes
git remote -v

git remote rename origin origin_http

git remote -v

git remote rename origin_ssh origin

git remote -v

新发现可以直接删除掉原来的remote:

1
git remote rm origin

然后重新添加就可以了。

1
2
3
git remote add origin git@github.com:xxxxxxxxxx.git
git branch --set-upstream-to=origin/main main
git push -u origin main

参考资料:

最新解决git拉取远程仓库失败问题:Failed to connect to github.com port 443: Timed out.
git使用——10.使用ssh方式推送git项目
通过SSH向GitHub push代码
git重命名远程名称

文章目录