当前位置:   article > 正文

一台电脑配置两个Git账号_一台电脑可以模拟两个git账户提交吗

一台电脑可以模拟两个git账户提交吗

问题:

存在如下情况:我们自己又个GitHub账号,用来做自己的一些代码练习,公司有个其他git的账号如:gitlab、gerrit等,用来工作。此时我们需要配置两个ssh key.

解决方法:

全局配置:

git config --global user.name "用户名"
git config --global user.email "邮箱"
  • 1
  • 2

生成多个ssh key

在c盘->Users->用户名->.ssh文件夹下执行git bash here命令:

ssh-keygen -t rsa -C "yourmail@gmail.com"
  • 1

生成第一个ssh key,比如取名为id_rsa_github
在这里插入图片描述
此时会在C:\Users\用户名.ssh下生成如下文件
在这里插入图片描述

再次输入上面的命令,生成第二个ssh key。注意邮箱名字需是对应的另外一个账号的邮箱名。执行后会新生成两个文件。
在这里插入图片描述

添加私钥

  • 执行ssh-agent命令
ssh-agent
  • 1

在这里插入图片描述

  • 添加私钥
    分别执行如下命令:
ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_gerrit
  • 1
  • 2

执行成功:
在这里插入图片描述
如果遇到如下问题:
Could not open a connection to your authentication agent.
执行:

ps aux | grep ssh
  • 1

再执行

kill -9 线程号
  • 1

然后在.ssh目录下用git bash执行:

exec ssh-agent bash
eval ssh-agent -s
  • 1
  • 2

最后再次添加ssh key

ssh-add ./id_rsa_github
ssh-add ./id_rsa_gerrit
  • 1
  • 2

创建config文件:

在.ssh文件夹下创建名为config的文件(无后缀名)
创建好后,在git bash下执行touch config命令。

touch config
  • 1

在config文件中输入如下内容:

# gerrit
Host gitool.glanway.com
HostName gitool.glanway.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gerrit
User userName

# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
User userName
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

文件说明:
Host:是HostName的别名,可以自己取,一般取跟HostName一样的名字。
如果遮掩定义:Host mygithub,则在git clone时应如下输入:
git clone git@mygithub:PopFisher/AndroidRotateAnim.git
HostName:配置真正的域名
PreferredAuthentications:配置登录时用什么权限认证,如:publickey,password publickey,keyboard-interactive等
User:用户名

添加公钥

将对应的公钥添加到对应的github和gitlab上:
红色框中为公钥

测试

输入:

ssh -T git@github.com          #测试github
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/438655
推荐阅读
相关标签
  

闽ICP备14008679号