一般情况下,公司代码company_repos/会存放在公司内部的gitlab上,个人代码privacy_repos/会放在github上。因此我们会有两个git账户:公司账号zioyi@campany.com和个人账号zioyi@privacy.com。如果我们想把两者的账号区分使用,可以通过sshgit config来指定公司代码通过公司账号推,个人代码通过个人账号推,具体步骤:

1.生成RSA公私钥

要生成两组:公司的和个人的

# ssh-keygen -t ras -C "{注册账号时用的邮箱}"
> cd ~/.ssh # 公司的
> ssh-keygen -t ras -C "zioyi@campany.com"
# 然后在交互中设定文件名:id_rsa_gitlab # 个人的
> ssh-keygen -t ras -C "zioyi@privary.com"
# 然后在交互中设定文件名:id_rsa_githuab # 查看一下
> ls
config id_ras_gitlab id_ras_gitlab.pub
id_ras_github id_ras_github.pub known_hosts # 配置Host
vi config host gitlab.com
Hostname gitlab.com
User zioyi@company.com
IdentityFile ~/.ssh/id_rsa_gitlab host github.com
Hostname github.com
User zioyi@privary.com
IdentityFile ~/.ssh/id_rsa_github

2.将公钥配置要gitlab和github的SSH-Key

校验一下:

> ssh -T git@github.com
# Hi Zioyi! You've successfully authenticated, but Github does not provied shell aceess. > ssh -T git@gitlab.com
# *** Weclome to Gitlab, zioyi ***
# Unfortunately, interactive shells are disbaled. # 说明成功

3.使用git config配置账户信息

# 配置公司代码
> cd /company_repos/repo1
> git config user.name "Zioyi"
> git config user.email "zioyi@company.com"
# 会修改当前代码下的git配置 .git/config
> cat .git/config
[user]
name = Zioyi
emial = zioyi@company.com # 配置个人代码
> cd privary_repos/repo1
> git config user.name "Zioyi"
> git config user.email "zioyi@privary.com"
# 会修改当前代码下的git配置 .git/config
> cat .git/config
...
[user]
name = Zioyi
emial = zioyi@privary.com

如果嫌一个一个配置太麻烦,可以设置全局配置user信息为个人账号,然后只需在公司代码中配置.git/config user信息为公司账号

# 全局配置命令 更改 ~/.gitconfig
> git config --global user.name "Zioyi"
> git config --global user.email "zioyi@privary.com"
> cat ~/.gitconfig
...
[user]
name = Zioyi
emial = zioyi@privary.com

大功告成!之后个人代码和公司代码的提交账号就可以区分使用了~

Git配置多账户的更多相关文章

  1. 初次使用git配置以及git如何使用ssh密钥(将ssh密钥添加到github)

    初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git con ...

  2. git配置SSH Key,上传本地代码至github

    git配置全局的name和email git config --global user.name "name" git config --global user.email &qu ...

  3. 初次安装git配置用户名和邮箱

    初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git con ...

  4. Windows环境下Git配置及使用

    Windows环境下Git配置及使用 一.安装包位置 Git下载地址https://git-scm.com/download/win TortoiseGit下载地址https://tortoisegi ...

  5. git设置多账户

    1.设置公司gitlab 0.先给git 设置一个全局的账户, 如果是公司的电脑环境, 全局的账户当然是用你在公司的邮箱了 git config --global user.name "yo ...

  6. git使用,Git的skil-map,git配置http/https/socks5代理

    . 检出.克隆库: git clone git://git.openwrt.org/openwrt.git 2. git查看某个文件的修改历史 git log --pretty=oneline 文件名 ...

  7. git配置多个ssh key

    随着工作的深入,我们通常都会有多个git账户.比如公司gitlab一个账户,github或gitee有一个账户.而平时我们又回通过 配置ssh公私钥认证的方式省去繁琐的登录远程仓库的操作,不同的git ...

  8. PhpStorm Git 配置(解决文件没有变色的问题)

    摘要: PhpStorm Git 配置 首先需要安装windows下的Git版本,网上有很多我下载的是msysgit反正都差不多,不会的自己百度. 其次打开PhpStorm,点击File ,Setti ...

  9. Android开发之Git配置

    Android开发之Git配置 1.首先git配置: 输入命令: git config --global user.name "xxx.xx" git config --globa ...

随机推荐

  1. aptitude软件状态标志i、v、p

    输出的结果分三栏,分别为状态.包名和描述.而状态则由p.i.v等字母表示.查询后才知道这些标识的含义是这样的: i - 包已经成功安装,并且所有依赖都满足. c - 包已经被移除,但是配置文件被保留. ...

  2. PAT甲级:1089 Insert or Merge (25分)

    PAT甲级:1089 Insert or Merge (25分) 题干 According to Wikipedia: Insertion sort iterates, consuming one i ...

  3. (Ooencv3)颜色空间转换

    (Ooencv3)颜色空间转换 opencv中有多种色彩空间,包括 RGB.HSI.HSL.HSV.HSB.YCrCb.CIE XYZ.CIE Lab8种,使用中经常要遇到色彩空间的转化,以便生成ma ...

  4. IE浏览器 查看Form对象

    在ie的debug窗口中,查看form中的值,从form.all("OtherNo").value = 赋值;(fm.all('ActionFlag').value = " ...

  5. LinkedHashMap 与 LRUcache

    LRU 缓存介绍 我们平时总会有一个电话本记录所有朋友的电话,但是,如果有朋友经常联系,那些朋友的电话号码不用翻电话本我们也能记住,但是,如果长时间没有联系了,要再次联系那位朋友的时候,我们又不得不求 ...

  6. 共享内存 & Actor并发模型哪个更快?

    HI,前几天被.NET圈纪检委@懒得勤快问到共享内存和Actor并发模型哪个速度更快. 前文传送门: 说实在,我内心10w头羊驼跑过...... 先说结论 首先两者对于并发的风格模型不一样. 共享内存 ...

  7. GitHub秘钥(SSH Key)

    一.公钥的作用 公钥一般给服务器,别人权限中加入我给的公钥,当我们从远地仓库中下载项目(git clone xxx)的时 那个服务器通过他的绑定的公钥来匹配我的私钥,如果匹配,则就可以正常下载,如果不 ...

  8. SaltStack 水平权限绕过漏洞(CVE-2020-11651)

    影响版本 SaltStack < 2019.2.4 SaltStack < 3000.2 poc git clone https://github.com/jasperla/CVE-202 ...

  9. Mysql命令语句

    常用的管理命令 SHOW DATABASES;    //显示当前服务器下所有的数据库 USE 数据库名称;          //进入指定的数据 show tables;              ...

  10. 02.反射Reflection

    1. 基本了解 1.1 反射概述 文字说明 审查元数据并收集关于它的类型信息的能力称为反射,其中元数据(编译以后的最基本数据单元)就是一大堆的表,当编译程序集或者模块时,编译器会创建一个类定义表,一个 ...