git配置两个gitlab和gitee账号和邮箱

背景

由于公司使用gitlab部署私有代码库,个人有需求使用gitee的开源代码,
如果配置全局的账号密码会冲突。所以有必要生成两个id_rsa.pub密钥分别配置到gitlab和gitee的ssh密钥中去。

操作

  1. 设置第一个邮箱
ssh-keygen -t rsa -f ~/.ssh/id_rsa_1 -C “第1个邮箱”

如图所示,全程直接回车,不设置密码


image.png
  1. 同理,设置第二个邮箱
ssh-keygen -t rsa -f ~/.ssh/id_rsa_1 -C “第2个邮箱”
image.png
  1. 创建config文件
# first user
Host git@gitlab.com
HostName http://gitlab.com
User 用户名
IdentityFile ~/.ssh/id_rsa_1

# second user
Host git@gitee.com
HostName https://gitee.com
User 用户名
IdentityFile ~/.ssh/id_rsa_2

这里配置过程中出现了一点问题,就是因为是公司gitlab,没有域名,这里需要在公司Gitlab的web版本创建一个空白项目,找到域名和端口


image.png

这里将config文件改成:

# first user
Host 10.1.1.1(举例)
port 12345(举例)
HostName 10.1.1.1(举例)
User 用户名
IdentityFile ~/.ssh/id_rsa_1

# second user
Host git@gitee.com
HostName https://gitee.com
User 用户名
IdentityFile ~/.ssh/id_rsa_2
  1. 将id_rsa_1.pub和id_rsa_2.pub分别配置到gitlab和gitee的ssh密钥配置中。


    image.png
  2. 取消git的全局配置

git config --global --unset user.name

看一下有没有全局配置

git config --global -l

如图下图所示,如果没有用户名和邮箱就代表取消了全局配置了。


image.png
  1. 执行ssh识别
    (1)#Start the ‘ssh-agent.exe’ process
eval $(ssh-agent -s)

(2)#install the SSH keys

ssh-add ~/.ssh/id_rsa_1
ssh-add ~/.ssh/id_rsa_2

(3)# show all id_rsa

ssh-add -l
image.png

注意:
1、如果ssh-add这步报错:Could not open a connection to your authentication agent.
需要先启动ssh-agent,也就是上面的第一个步骤。
参考链接:https://stackoverflow.com/questions/17846529/could-not-open-a-connection-to-your-authentication-agent
2、如果执行ssh-add -l报错:Could not open a connection to your authentication agent.
需要先将密钥添加,也就是上述的第二步。
参考链接:https://stackoverflow.com/questions/26505980/github-permission-denied-ssh-add-agent-has-no-identities

  1. 测试是否连接成功


    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容