返回首页 - Notes - 2015

Git 多个密钥共存的解决方法


自己在 Github 有帐号,而公司 Git 服务器必须用公司内部邮箱来提交代码,且公司服务器提交时要求要求用户名和邮箱必须匹配,否则会拒绝 push 请求

可以简单粗暴地用公司邮箱重新生成一份密钥,然后把 ~/.gitconfig 里面的用户名和邮箱改了,但那样会导致 Github 里面的提交人变成公司邮箱,肯定不合适

由此,就需要有两套密钥、两套提交者信息了,一套自己用,一套公司项目用

下面是具体的操作步骤

  1. ssh-keygen -t rsa -C "my@ruchee.com":这个生成 Github 用的默认私钥
  2. ssh-keygen -t rsa -f ~/.ssh/id_rsa.company -C "caodan@ak.cc":这个生成公司项目所需的密钥
  3. ~/.ssh 目录下新建一个 config 文件,内容如下:
    Host 公司Git服务器的域名或IP地址
        IdentityFile ~/.ssh/id_rsa.company
        User caodan
    
  4. 去到具体的公司项目下,执行 git config user.name 'caodan'git config user.email 'caodan@ak.cc',修改提交者信息为公司用户名和公司邮箱

date:2015-06-03