在 GitHub 多个账号上使用不同的 SSH 的配置方法 | 珊瑚贝

现在遇到这么一个情况,在我电脑上配置了一对 SSH 秘钥,其中公钥已经添加到了我的 GitHub 上面。 现在我又申请了一个账号,我同样想添加这个秘钥到这个账号上去,但是 GitHub 提示了一个错误,说这个公钥已经被使用,不能添加。 于是,我意识到了一个问题,同一个公钥是不能添加到不同的 GitHub 账号的。在我的 GitHub 上配置了,另一个就不能配置了。 所以,我需要重新生成一对 SSH,过程如下: 在命令行中输入:

1
ssh-keygen -t rsa -C '1016903103@qq.com'
1
2
Generating public/private rsa key pair.
Enter file in which to save the key (~/.ssh/id_rsa): ~/.ssh/id_rsa2 #这里输入一个新的ssh key文件名

在这里我们就输入~/.ssh/id_rsa2 了,注意此处一定要加上路径名,要不然生成的秘钥不会保存到 .ssh 文件夹中。 后面会让你提示输入密码,直接回车两次就好了,如果你非要输入密码也没事。 接下来就会提示秘钥生成成功,会打印出你生成的秘钥。 ~/.ssh/id_rsa2 为新 SSH Keys 文件名,根据实际情况修改,保证每次不一样即可。 打开新生成的~/.ssh/id_rsa2.pub 文件,将里面的内容添加到 GitHub 后台,在这里我就添加到我另一个 GitHub 账号里了。 接下来你再 Push 尝试一下,发现会提交失败,提示如下的内容。

1
2
Please make sure you have the correct access rights 
and the repository exists.

这是因为它默认识别了你第一个私钥,也就是 id_rsa 为了让它识别你新生成的私钥,你需要在.ssh 目录,注意一定要是.ssh 目录,和你的秘钥放在一块。要不然不能识别,新建一个 config 文件,不要后缀,文件名即为 config 输入如下内容:

1
2
3
4
5
Host git@github2.com   #此处可以随意指定
HostName github.com
User git
Port 22
IdentityFile ~/.ssh/id_rsa2 #你新生成的SSH名字

Git 的时候不是有一个 SSH 地址吗?比如我原先的是

1
git@github.com:cqcre/shiyida.git

现在我们就要把它改成

1
git@github2.com:cqcre/shiyida.git

其中:前面的内容就是你填写的 Host 内容。 你可以随意更改,这里我为了保持风格统一,就把 Host 设置为了 git@github2.com 如果你的 Host 设置为 xxx,那么我的 SSH 地址就要改为 xxx:cqcre/shiyida.git,你的地址相对应地更改。 现在尝试一下,就可以 Push 了,如果还不能,请重新打开 Git Bash,需要关闭后再次开启一下 Git 才能生效的。 如果有问题,与我联系~邮箱 1016903103@qq.com QQ 1016903103

来源:https://cuiqingcai.com/495.html

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?