[git] git ssh key 管理

194 阅读1分钟

多用户(多key)管理

在配置git环境点过程中,通常会管理多个 shh key,比如 github、gitlab、gitee 各一个,这种情况可以这么配:fy98.com/2014/09/09/…

单环境也可以

使用时间长了发现多环境管理比较麻烦,还得生成那么多pub key,索性使用一个email生成唯一一个ssh key也是可以的。

首先,在 ~/.git/gitconfig 中配置好全局的name和email,作为git commit 点作者信息。这一点大家应该都知道,但是这里往往会有一个问题:使用同一个全局点name和email就会导致提交公司代码和github代码时使用同一个name和email,这样不太好,最好能分开,基于此解决方案就来了:

在该文件中继续增加一个配置:

[user]
    path = your_gitlab_or_company_user
    email = your_gitlab_or_company_email
    
# 增加的配置,注意:最后一个/千万不要忘记写
[includeIf "gitdir:~/workspace/github/"]
    path = ~/workspace/github/.gitconfig

该配置用来表示,如果是在github目录下,就读取 github/.gitconfig 配置文件,根据配置文件就近原则,github目录下的 .gitconfig 文件会覆盖全局 .gitconfig 配置文件。所以只要你在这个文件中写入用于github中的name 和 email就好了。

比如这样写:

[user]
    path = your_github_user
    email = your_github_email