在我~/.gitconfig,我列出我的个人电子邮件地址[user],因为这是我想用于Github回购.
但是,我最近也开始使用git工作.我公司的git repo允许我提交,但是当它发出新变更集的公告时,它说它们来自匿名,因为它不能识别我的电子邮件地址.gitconfig- 至少,这是我的理论.
是否可以指定多个[user]定义.gitconfig?或者是否有其他方法来覆盖.gitconfig某个目录的默认值?在我的情况下,我检查所有工作代码~/worksrc/- 有没有办法只指定一个.gitconfig目录(及其子目录)?
遵循this SO post和链接指南,我设置了如下条件配置...
$ cat ~/.gitconfig
[user]
name = Random J. Hacker
email = RandomJ@hack.er
[includeIf "gitdir:~/work/*"]
path = ~/work/.gitconfig
$ cat ~/work/.gitconfig
[user]
name = Serious Q. Programmer
email = serious.q@programmer.biz
Run Code Online (Sandbox Code Playgroud)
这样,我在 Programmer Co. 工作时克隆的所有存储库都将我的@programmer.biz工作电子邮件地址分配为默认--author凭据;我克隆到我的桌面或/tmp/~/.vscode或任何地方的每个随机存储库都将我的超级合法@hack.er凭证分配为作者。
不幸的是,我注意到以下行为......
$ git clone git@github.com:programmerbiz/repo.git
$ cd repo/
$ git config --list | grep user
user.name=Random J. Hacker
user.email=RandomJ@hack.er
user.name=Serious Q. Programmer
user.email=serious.q@programmer.biz
Run Code Online (Sandbox Code Playgroud)
不好了!我的@hack.er用户被业务回购接收了!
我想为所有 repos自动配置一个且只有一个默认值 …