[toc]
MAC本添加多个github账号
使用需求
通常情况下,我们会有两个 github 账号:一个是公司的,另一个是私人的。由于 github 是使用 SSH key 的 fingerprint (对应的公钥id_rsa_pub)来判定你是哪个账户,而不是通过用户名,如果是在多台电脑上使用一个账号,可以为该账号添加多个 SSH key,如果是一台电脑使用多个账号,则分别生成多个 SSH key 添加到对应的账户即可。所以本文要实现的是公号和私号在 git 上同时使用,两者互不干扰。
第一步、生成多个sshkey
cd ~/.ssh
切换到用户家目录,然后生成sshkey,执行以下命令,一路回车即可
ssh-keygen -t rsa -f ~/.ssh/id_rsa_one -C "one@xxx.com"
ssh-keygen -t rsa -f ~/.ssh/id_rsa_two -C "two@xxx.com"
这样会在~/.ssh
目录下生成四个文件:
id_rsa.one //账号one的私钥
id_rsa.one.pub //账号one的公钥
id_rsa.two //账号two的私钥
id_rsa.two.pub //账号two的公钥
第二步、创建配置文件config
在 ~/.ssh
目录下新建 config 文件,令不同 Host 实际映射到同一 HostName,但密钥文件不同,这里举例为one 和two,可自行修改为自己使用的用户
# one (first account)
Host one.github.com
HostName github.com
PreferredAuthentications publickey
User one
IdentityFile ~/.ssh/id_rsa_one
# two(second account)
Host two.github.com
HostName github.com
PreferredAuthentications publickey
User two
IdentityFile ~/.ssh/id_rsa_two