日常开发过程中,我们可能遇到需要在同一电脑上配置多个Git账户的情况;github、公司的git服务器等,这时候我们需要配置多个ssh。以Windows为例。
1.取消全局的账户配置
查看全局账户
git config --global user.name
如果存在,取消全局设置
git config --global --unset user.name
git config --global --unset user.email
2.创建不同user的ssh key
#新建ssh key
cd ~/.ssh
ssh-keygen -t rsa -C "new_user@email.com" # 生成新的ssh key
# 设置新的ssh key的名称
Enter file in which to save the key (/Users/{username}/.ssh/id_rsa): id_rsa_company
3.新密钥添加到ssh agent中
默认只添加了id_rsa,因此需要将新的ssh key 添加
ssh-add ~/.ssh/id_rsa_company
如果添加报错:Could not open a connection to your authentication agent,尝试以下命令
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa_company
4.修改config文件
在~/.ssh目录下找到config文件,如果没有就创建
touch config #创建config文件
修改config 文件
# GitLab.com server
Host gitlab.com
IdentityFile ~/.ssh/id_rsa
# Private GitLab server
Host gitlab.company.com
IdentityFile ~/.ssh/id_rsa_company
5.测试
ssh -T git@gitlab.company.com
6.其他
在使用idea的时候,可能出现命令行可以clone 代码,但是idea里面不能clone代码的情况,检查一下配置:
Version Control -> Git -> SSH executable: Native
作者:一大只土豆
链接:https://www.jianshu.com/p/6d25060e7ff9
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。