1. 前言
有的时候我们肯那个会用到两个github
账号,这个时候提交代码就出现了问题,第一个可以提交,但是第二个提交就出现了问题。
2. 配置
- 生成公钥和私钥文件
1 | // 1. 首先进入到.ssh目录 |
2 | cd ~/.ssh |
3 | |
4 | // 2. 查看本地是否已经有存在的公钥和私钥文件(PS: 如果存在了,则只需要生成第二个账号即可,或者全部删除重新生成) |
5 | ls |
6 | |
7 | // 3.生成SSHkey |
8 | ssh-keygen -t rsa -C "你的github邮箱" |
9 | |
10 | 然后按下Enter(回车键) |
11 | 这个时候提示:Enter file in which to save the key(xxx/xxx/.ssh/id_rsa): |
12 | 我们按照格式键入要保存的文件名即可:id_rsa_xxx xxx是你自己定义的名字 |
13 | 这个时候又提示:Enter passphrase (empty for no passphrase): |
14 | 直接按下Enter(回车键) |
15 | 这个时候又提示:Enter same passphrase again: |
16 | 继续按下Enter(回车键) |
17 | OK,成功之后会提示以下信息(PS: 说明已经成功生成SSHKey): |
18 | Your public key has been saved in xxx/xxx/.ssh/id_rsa_(你刚才定义的名字).pub |
19 | The key fingerprint is: |
20 | SHA256:lEmncZqtuXuHgZ4XtkVMkazLaTC5XgN0VLjYi3T8Fk8 xxx@xxx.com |
21 | The key s randomart image is: |
22 | +---[RSA 2048]----+ |
23 | | o o..=+o | |
24 | | . @. + o X| |
25 | | B..B o | |
26 | | . oB B . E| |
27 | | So X = + | |
28 | | ..* X o .| |
29 | | ..+ O o | |
30 | | o.* . | |
31 | | .o . | |
32 | +----[SHA256]-----+ |
33 | |
34 | // 4. 再次查看.ssh目录 |
35 | ls |
36 | 这个时候应会看到有文件: id_rsa_(你刚才定义的名字)、id_rsa_(你刚才定义的名字).pub |
37 | |
38 | // 5. 把公钥配置到GitHub |
39 | pbcopy < ~/.ssh/id_rsa_(你刚才定义的名字).pub // 拷贝公钥到剪贴板 |
40 | 登录github SSH keys粘贴进去配置好 |
41 | |
42 | // 6. 新的密钥添加到SSH agent中 |
43 | ssh-add id_rsa_(你刚才定义的名字) // 这里是添加私钥 |
44 | |
45 | // 7. 创建配置文件config |
46 | vi config // 新建并打开config文件 |
47 | 键入以下字符: |
48 | ==============分割线(不要粘贴进去)================= |
49 | Host github.com |
50 | HostName github.com |
51 | PreferredAuthentications publickey |
52 | IdentityFile ~/.ssh/id_rsa |
53 | |
54 | Host (你刚才定义的名字).github.com |
55 | HostName github.com |
56 | PreferredAuthentications publickey |
57 | IdentityFile ~/.ssh/id_rsa_(你刚才定义的名字) |
58 | ==============分割线(不要粘贴进去)================= |
59 | |
60 | // 8. 验证连接 |
61 | ssh -T git@(你刚才定义的名字).github.com |
62 | 这个如果成功会出现提示:Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. |
63 |
|
64 | // 9. 设置本地全局git邮箱和用户名 |
65 | git config --global user.email "你的邮箱" |
66 | git config --global user.name "你的名字" |
67 | git config --list // 查看设置好的内容 |