配置多个github账号
有时候我需要在同一台电脑上配置多个Github账号,比如博客使用的是GitHub 1,个人开发用的是Github 2。这个时候我们可能需要有两个SSH Key,这就需要配置多个SSH key来实现了
1. 生成1号邮箱的ssh key
ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/id_rsa_qq
这一步会生成两个文件:id_ras_qq 和 id_rsa_qq.pub
2. 配置Github公钥
打开1号邮箱的github.com-‘头像’-‘settings’-‘SSH and GPG keys’-‘new SSH key’
title:随意(可以用来标识这个key对应哪台电脑)
key:填写上一步生成的id_rsa_qq.pub的内容
3. 生成2号邮箱的ssh key
同样的道理不再重复,注意,修改生成的文件名,如id_rsa_163
4. 生成config文件
在~/.ssh目录下新建一个名为config的文件
touch ~/.ssh/config
5. config内容:
# 1号邮箱
Host qq
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_qq
# 2号邮箱
Host 163
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_163
6. 测试是否成功
分别使用以下命令测试是否添加成功(此处的qq和163就是config文件中配置的Host值)
ssh -T git@qq
ssh -T git@163
如果两个命令都返回以下内容就说明配置成功
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
7. 配置仓库设置
首先删除Git配置的全局用户名和邮件地址,接着在每个项目仓库中按照需求设置不同的user.name和 user.email
# 删除全局设置
git config --global --unset user.name
git config --global --unset user.email
# 添加本地设置 需要在每个本地仓库目录下执行
git config --local user.name xxxx
git config --local user.email xxx
8. 添加远程仓库
添加远程仓库的时候,把github.com修改成qq或者163就可以了(即上述config中的Host值),用上面两个Host名称来代替原来的github.com(这一步很重要)如:
# 原始的添加方式
git remote add origin [email protected]:xxx/example.git
# 现在的添加方式
git remote add origin git@qq:xxx/example.git # 1号邮箱
git remote add origin git@163:xxx/example.git # 2号邮箱
9. 拉取远程仓库
# 原始拉取方式
git clone [email protected]:xxx/xx.git /xx/xx/xx
# 现在的拉取方式
git clone git@qq:xxx/xx.git /xx/xx/xx
- 原文作者:阿林
- 原文链接:https://itachi.xyz/post/configure-two-github-accounts.html
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。