目录

在不同目录使用不同的git用户配置

背景

因为使用的是公司的笔记本,希望可以通过不同文件路径去设置不同的git用户,因为默认会读取.gitconfig中的配置,每次只能手动在项目中进行git配置才能实现自定义用户。所以希望能找到个方案,可以实现在work目录使用公司的git用户配置,在其他目录中使用自己的git用户配置。

方案

从git的2.13版本之后,是可以通过在.gitconfig中进行配置从而设置多个用户的。如下,我们希望在~/work目录中使用其他的用户配置,可以在git的全局配置~/.gitconfig中进行如下配置

[user]
    name = xxxx
    email = xxxx@private.com

[includeIf "gitdir:~/work/"]
    path = ~/work/.gitconfig

上述配置是全局的git配置,接下来我们在~/work目录中的~/work/.gitconfig中设置其他用户配置

[user]
    email = xxxx@company.com

这样设置之后,我们在~/work目录中进行的提交就会用我们在该目录中的git配置进行提交,我们成功的将工作目录和其他目录进行了分离,再也不用担心,因为git设置错误,导致我们重新提交。

参考

  1. git2.1.3_conditional_includes
  2. can-i-specify-multiple-users-for-myself-in-gitconfig