GitHub 配置SSH Key

1,687 阅读2分钟

1 HTTP URL 和SSH URL的区别

下面两个地址展示的是同一个项目,但是这两个地址之间有什么联系呢?

https://github.com/ourlang/excel.git
git@github.com:ourlang/excel.git

前者是https url 直接有效网址打开,但是用户每次通过git提交的时候都要输入用户名和密码,有没有简单的一点的办法,一次配置,永久使用呢?当然,所以有了第二种地址,也就是SSH URL,GitHub配置SSH Key的目的是为了帮助我们在通过git提交代码是,不需要繁琐的验证过程,简化操作流程。居然操作如下

2 设置git的user name和email

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XET08Udo-1586656424361)(/image/1.png)]

  • 如果是第一次使用,或者还没有配置过的话需要操作以下命令,自行替换相应字段(账号和登录邮箱
  • 说明:git config --list 查看当前Git环境所有配置,还可以配置一些命令别名之类的。
git config --global user.name "ourlang"
git config --global user.email  "ourlang@foxmail.com"

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mUmimETD-1586656424362)(/image/2.png)]

3 检查是否存在SSH Key

cd ~/.ssh
ls

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rtQ0YnOr-1586656424363)(/image/3.png)] 如果没有SSH Key,则需要先生成一下,操作过程中会弹出确认说明,按回车三次

ssh-keygen -t rsa -C "ourlang@foxmail.com"

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

4 获取SSH Key

cd ~/.ssh
ls
cat id_rsa.pub

拷贝ssh-rsa开头的ssh key,用于github添加ssh key [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OJxsBSCn-1586656424365)(/image/7.png)]

5 Github添加SSH Key

  • 在GitHub点击用户头像,选择setting 在这里插入图片描述

在这里插入图片描述 取个名字,把之前拷贝的秘钥复制进去,添加就好啦[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VUCHEJlZ-1586656424367)(/image/10.png)]

6 验证和修改

测试是否成功配置SSH Key

ssh -T git@github.com
//运行结果出现类似如下,则表示成功
Hi ourlang! You've successfully authenticated, but GitHub does not provide shell access.

7 用ssh拉取github项目

如果之前已经是https的链接,现在想要用SSH提交怎么办?直接修改项目目录下 .git文件夹下的config文件,将地址修改一下就好了。git地址获取可以看如下图切换,复制链接git@github.com:ourlang/excel.git

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Z8dGmAe-1586656424367)(/image/11.png)]

本地执行clone命令拉取项目接口

git clone git@github.com:ourlang/excel.git