配置SSH Keys的好处

在管理Git项目上,很多时候都是直接使用https url克隆到本地,当然也有有些人使用SSH url克隆到本地。

这两种方式的主要区别在于:

使用https url克隆对初学者来说会比较方便,复制https url然后到Git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。

而使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,如果你想要使用SSH url将代码提交到GitHub的话,你必须是这个项目的拥有者,否则你是无法添加SSH key的。

另外SSH默认是每次fetch和push代码都不需要输入账号和密码,如果你想要每次都输入账号密码才能进行fetch和push也可以另外进行设置。

步骤

打开Git命令窗口

桌面上右键鼠标选择Git bash here打开Git

检查本机已存在的SSH密匙

输入命令:

1
cd ~/.ssh

出现 No such file or directory 说明本机没有SSH密匙,否则继续输入ls查看.ssh文件夹内的文件

1
ls

如果有下面两个文件,说明本机有SSH密匙

id_rsa id_rsa.pub

创建本机的SSH密匙

本机有SSH密匙则跳过本步骤

输入命令:

1
ssh-keygen -t rsa -C "注册Github账户时用的邮箱"

连续按下回车键三次,至此本机的SSH密匙创建完成,该密钥一般存放在C盘的用户文件夹的.ssh文件夹中(我的是C:\Users\LeDao\.ssh

配置Github的SSH Key

进入Github首页,点击右上角的头像选择Settings,选择左侧菜单的SSH and GPG keys,然后点击右侧的New SSH key按钮,打开上面第三步的本地密钥id_rsa.pub文件(用记事本打开并复制其内容),复制到GitHub的key文本框中,title可以随意设置

img

测试

输入下面命令来测试是否配置成功

1
ssh -T git@github.com

出现Are you sure you want to continue connecting (yes/no/[fingerprint])?

输入yes

看到Hi a6678696! You’ve successfully authenticated, but GitHub does not provide shell access.

说明配置成功