3.mac上生成SSH key与GitHub通信


1.检查 SSH key 是否存在

在终端输入:

ls -a ~/.ssh

如果没有,终端显示如下:

No such file or directory

如果已经存在,则会显示 id_rsa 和 id_rsa.pub

  • 查看 .ssh
ls -a ~/.ssh

cd .ssh
cat id_rsa.pub //查看公钥
cat id_rsa     //查看私钥

2.生成新的 SSH key

1.设置 username 和 email(github 每次 commit 都会记录他们)

git config --global user.name "Leader755"
git config --global user.email "1181012791@qq.com"

2.通过终端命令创建 ssh key

//其中 your_email@example.com 为你在 GitHub 注册时的邮箱
'ssh-keygen -t rsa -C "1181012791@qq.com"

Bad escape character ‘ygen’ 错误原因!

ssh-keygen -t rsa -C “邮箱”
ssh-keygen 命令中间没有空格,如果在 ssh 后面加上空格,会得到 Bad escape character ‘ygen’.的错误。

成功后终端显示如下:

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,以避免某些「失误」,建议输入
这里有个问题需要注意,那就是当你在这里输入密码,以后在连接 gitHub 去 push 代码的时候都需要输入密码,非常蛋疼,所以在这里最好直接回车过即可,不用输入密码。**()**

3.即连续 enter 3 次,就会生成 key。

成功后终端显示:

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:(后面图形省略)

3.添加 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 已经生成成功

4.添加 SSH key 到 GitHub 和 coding

1.复制 id_rsa.pub 中的所有内容,

打开 id_rsa.pub,终端命令:

vim/cat   ~/.ssh/id_rsa.pub

手动复制以 ssh-rsa 到以 your_email@example.com 结尾的所有内容

或者直接输入命令复制 id_rsa.pub 中的所有内容,终端命令:

pbcopy < ~/.ssh/id_rsa.pub

5.登录 GitHub 和 coding

github:打开个人 Settings–>SSH keys–>Add SSH key

coding:打开个人设置–>SSH 公钥 –>新增公钥

Title 随便写
Key 粘贴之前复制的内容
这样 SSH key 就添加的 GitHub 或者 coding.
image.png
image.png

6.检测 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.

以上为提示内容,不过这里还是有一个需要注意的地方,如果没有上面的成功提示输出的话也不要害怕,我们可以先自己在本地建立一个 gitHub 仓库,然后进行 push 操作,如果 push 成功那么设置是成功的,如果 push 不上去的话再去检查。

7.使用 git 去创建一个 ssh key 就完成了

8.已经存在 ssh,创建新密钥

1>进入 ssh 目录

cd ~/.ssh/

2>用 ssh-keygen 命令生成一组新的 id_rsa_new 和 id_rsa_new.pub

ssh-keygen -t rsa -C "new email"

需要注意,出现提示输入文件名的时候要输入与默认配置不一样的文件名,比如: id_rsa_new

3>执行 ssh-agent 让 ssh 识别新的私钥

ssh-add ~/.ssh/id_rsa_new

4>添加 SSH 到钥匙串

ssh-add -K KeyPathOrKeyName

文章作者:   leader755
版权声明:   本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 leader755 !
评论
 上一篇
4.mac 上使用 vi 4.mac 上使用 vi
上一篇博客提到 mac 进入 vi 编辑界面,复制 ssh key。这篇就是介绍如何保存退出 vi。 如果是 vi,则:Esc 退出编辑模式,输入以下命令::wq 保存后退出 vi,若为 :wq! 则为强制储存后退出(常用):w 保存但不退
2019-11-23
下一篇 
mac 使用 homebrew mac 使用 homebrew
使用 brew update 指令 报错Error: The following directories are not writable by your user:/usr/local/sbin/usr/local/share/man/m
2019-11-20
  目录