要将个人GitHub账号和公司GitHub账号分开配置SSH,您可以按照以下步骤操作:
1. 生成新的SSH密钥对:打开终端,输入以下命令,将您的个人和公司账号替换成相应的信息。
```
ssh-keygen -t rsa -C "personal_email@example.com"
ssh-keygen -t rsa -C "work_email@example.com"
```
这将生成两个不同的SSH密钥对,一个用于个人账号,一个用于公司账号。
2. 将SSH公钥添加到您的GitHub账号:在GitHub网站上登录您的个人账号,打开“Settings” -> “SSH and GPG keys”,点击“New SSH key”按钮,将您的个人账号的SSH公钥复制并粘贴到文本框中,然后保存。
接着,再登录您的公司账号,重复上述步骤,将公司账号的SSH公钥添加到GitHub账号中。
3. 配置SSH:在终端中,打开您的SSH配置文件(如果不存在,则创建一个新的),并添加以下内容:
```
# Personal GitHub account
# 注意这个host类似id,每个id映射到自己的配置文件,包括hostname,私钥信息等等。id可以自己改,保证唯一即可,后面要用到
Host github.com-personal
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_personal
# Work GitHub account
# 注意这个host类似id,每个id映射到自己的配置文件,包括hostname,私钥信息等等。id可以自己改,保证唯一即可,后面要用到
Host github.com-work
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_work
```
这将为每个账号创建一个别名,并将相应的SSH密钥文件与之关联。
4. 测试SSH连接:在终端中,输入以下命令,测试您的SSH连接是否正常工作。
```
# @符号后面就是config中的host(前面注释中提到的id)
ssh -T git@github.com-personal
ssh -T git@github.com-work
```
如果您看到“Hi username! You've successfully authenticated, but GitHub does not provide shell access.”的消息,则说明您的SSH连接已经正常工作。
现在,您可以使用不同的SSH密钥和别名来访问您的个人和公司GitHub账号。当您想要克隆、推送或拉取存储库时,只需要使用相应的别名即可。例如,如果您想克隆个人账号的存储库,可以使用以下命令:
```
# @与:之间的字符串就是config中的host(前面注释中提到的id)
git clone git@github.com-personal:username/repo.git
```