1. 目的
最近我给Gitee提交了很多代码,但是贡献图还是一篇空白。查找github\gitee
统计代码共享量时使用的规则为:
原来是因为:我工作电脑上有两种项目:、
- Gitee 上的个人项目
- 公司内网 Gitlab 上的公司项目
我在安装Git的时候设置了Git全局用户邮箱为公司邮箱。导致Giee项目提交用户邮箱信息都是公司的邮箱,所以代码共享上就看不到绿油油的一遍。
我的目的就是Gitee项目使用个人的邮箱,公司Gitlab项目使用公司邮箱。
2. 方法
在 Git 2.13
版本中,增加了 conditional includes 配置,可以创建多个 gitconfig 文件,并针对不同的根目录使用不同的配置文件。
例如,以下全局配置文件 ~/.gitconfig
中包含以下用户配置信息,当项目 clone 在 D:/workspace/gitee/
目录下时,会自动使用另外一份配置文件
[user]
name = Your Name
email = [email protected]
[includeIf "gitdir:D:/workspace/gitee/"]
path = gitconfig/gitee.gitconfig
[includeIf "gitdir:D:/workspace/github/"]
path = gitconfig/github.gitconfig
注意:此处的 path 需要放在和 .gitconfig
相同的目录下,否则不生效,比如
以下是 gitconfig/gitee.gitconfig
文件的配置
[user]
name = Another Name
email = [email protected]
测试修改配置是否生效:
# 在本地 git repo下执行如下命令就能看到当前项目的用户信息
# 注意是在 具体的仓库目录下,不是上面配置的外层文件夹下
$ git config --show-origin --get user.email
注意:强烈建议将 global user 配置为你的 Github ID,避免默认提交中有效用户信息的缺失,导致 Github contributions 不准确。同时,不设置为公司邮箱,可以避免邮箱信息泄露。