一、检查 SSH key 是否存在
在终端输入如下代码:
ls -al ~/.ssh
如果没有,终端显示如下:
No such file or directory
如果有,终端显示如下:
➜ ~ ls -al ~/.ssh
total 24
drwx------ 5 ant staff 160 1 11 11:12 .
drwxr-xr-x+ 91 ant staff 2912 1 11 11:32 ..
-rw------- 1 ant staff 1675 1 11 11:09 id_rsa
-rw-r--r-- 1 ant staff 399 1 11 11:09 id_rsa.pub
-rw-r--r-- 1 ant staff 1989 9 28 15:48 known_hosts
二、生成新的 SSH key
在终端输入以下代码:
ssh-keygen -t rsa -C "your_email@example.com"
其中 your_email@example.com 为你在 GitHub 注册时的邮箱。
成功后终端显示如下:
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxx/.ssh/id_rsa):
提示你保存 .ssh/id_rsa 的路径,这里直接 enter。
Created directory '/Users/xxx/.ssh'.
Enter passphrase (empty for no passphrase):
提示输入 passphrase,每次与 GitHub 通信都会要求输入 passphrase,为了简化操作,建议输入enter。
成功后终端显示:
Your identification has been saved in /Users/xxx/.ssh/id_rsa.
Your public key has been saved in /Users/xxx/.ssh/id_rsa.pub.
The key fingerprint is:
16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 your_email@example.com
The key's randomart image is:(后面图形省略)
三、添加 key 到 SSH
终端输入如下命令:
ssh-add ~/.ssh/id_rsa
此时会要求输入 passphrase,输入步骤二中填的 passphrase。
成功后,终端出现如下显示:
Identity added: /Users/xxx/.ssh/id_rsa (/Users/xxx/.ssh/id_rsa)
最后,在 /Users/xxx/.ssh/ 生成两个文件,id_rsa 和 id_rsa.pub
此时,SSH key 已经生成成功。
四、添加 SSH key 到 GitHub
1.复制 id_rsa.pub 中的所有内容
打开 id_rsa.pub,终端命令如下:
vim ~/.ssh/id_rsa.pub
手动复制以 ssh-rsa 到以 your_email@example.com 结尾的所有内容。
或者直接输入命令复制 id_rsa.pub 中的所有内容,终端命令如下:
pbcopy < ~/.ssh/id_rsa.pub
2.登录 GitHub
打开个人 Settings-->SSH and GPG keys-->new SSH key
Title随便写。
Key粘贴之前复制的内容。
这样SSH key 就添加的 GitHub。
五、检测 SSH key
终端输入如下命令:
ssh git@github.com
此时会验证 SSH key 是否可以访问 GitHub。
若成功则显示如下:
Hi your_name! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.