同时使用两个账号分别操作Github和Gitlab

一般开发人员在公司工作需要用公司内部的gitlab,自己喜欢写一点小代码则会用到github,如何在一台机器上用两个账号分别操作两个不同的git提供商呢?
在参考了这篇github上文章后https://github.com/xirong/my-git/blob/master/use-gitlab-github-together.md,自己动手尝试,感觉很棒。

1. 配置 Git 用户名、邮箱

分别配置两个账号对应到global和local,且一般是常用的为global,所以我将个人邮箱配置为github账号,公司邮箱配置为公司gitlab账号。创建全局账号(github)
git config —global user.name ‘MarsJiao’ && git config —global user.email ‘12345678@qq.com’
—local的本地账户的配置,只在用git init创建一个本地仓库时才有效:
git config —local user.name ‘Mars’ && git config —local user.email ‘mars@corp.xyz.com’

2. 生成 ssh key 上传到 Github/Gitlab

ssh key 默认生成后保存在 ~/.ssh/目录下 ,默认为 id_rsa 和 id_rsa.pub 两个文件,由于我们需要分开配置,所以这么做:
ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitlab -C “mars@corp.xyz.com”
上面这条命令在生成公私密钥对的同时制定文件名,表示gitlab专用。
ssh-keygen -t rsa -C ‘12345678@qq.com’
这条命令用于生成默认的github的公司密钥对。
命令执行完成后,这时~/.ssh目录下会多出id_rsa.gitlab和id_rsa.gitlab.pub两个文件,id_rsa.gitlab.pub 里保存的就是我们要使用的key,这个key就是用来上传到 Gitlab上的。

3. 配置 config 文件

在 ~/.ssh目录下,如果不存在,则新建 touch ~/.ssh/config文件 ,文件内容添加如下:
Host *.corp.xyz.com
IdentityFile ~/.ssh/id_rsa.gitlab
User mars
配置完成后,符合 *.corp.xyz.com 后缀的 Git 仓库,均采取~/.ssh/id_rsa.gitlab 密钥进行验证,其它的采取默认的。

4. 上传public key 到 Github/Gitlab

以Github为例,过程如下:
1. 登录github
2. 点击右上方的Accounting settings图标
3. 选择 SSH key
4. 点击 Add SSH key
在出现的界面中填写SSH key的名称,填一个你自己喜欢的名称即可,然后将上面拷贝的~/.ssh/id_rsa.pub文件内容粘帖到key一栏,在点击“add key”按钮就可以了。
添加过程github会提示你输入一次你的github密码 ,确认后即添加完毕。 上传Gitlab的过程一样。

5. 验证是否OK

由于每个托管商的仓库都有唯一的后缀,比如 Github的是 git@github.com:*,所以可以这样测试:
ssh -T git@github.com
而gitlab的可以这样测试:
ssh -T git@gitlab.corp.xyz.com
如果能看到一些 Welcome 信息,说明就是 OK的了。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值