作为开发者,bug 任何时候都要修!不修不行!,你们想想,你带着老婆出了城,吃着火锅还唱着歌,突然就收到通知说线上项目崩了,要赶紧修,每分钟都损失好几个小目标,这时候我们只好打开个人电脑,改起了公司项目代码。 种种的种种造成了我们自己的电脑上可能同时存有个人项目和公司项目,在使用 Git 提交代码的时候我们需要设置 name 和 email,因为没设置或设置错误造成个人 email 和公司 email 用混的情况让我非常苦恼,我以为世界本来就这么混乱,直到我膝盖中了一箭,上面写这 includeIf,我如获至宝,终于有了一套完美的方案来解决这个问题,下面就整理分享一下。
宇宙的起源只有一个项目,我们只需要在项目目录下执行设置用户的命令就完事了。
git config user.name "Junyao Bai"
git config user.email baijunyao@baijunyao.com
但是总还是会诞生新的项目,如果忘了在新项目下设置用户,就会产生奇奇怪怪的默认用户的提交,例如我早些年的项目下就有这样的提交,把我永远钉在个人项目 Git 历史的耻辱柱上。
Author: bjy <bjy@bjydeMacBook-Pro.local>
Date: Sat Apr 2 22:24:37 2016 +0800
为了避免上面的问题,我学习了全局大法,直接给 Git 设置了一个全局用户。
git config --global user.name "Junyao Bai"
git config --global user.email baijunyao@baijunyao.com
从此我的提交历史再次一片祥和,但是快乐的时光总是短暂的,在一个月黑风高的夜晚,线上项目她说崩就崩了,我在家打开电脑,clone 代码一顿操作猛如虎,执行了提交命令,因为上面这个全局设置,我用了个人用户信息提交了公司代码,又双叒叕被钉在了公司项目 Git 历史的耻辱柱上。全局用户在个人项目和公司项目共存的电脑上并不能友好的处理混用的问题,依然需要在每个项目中单独设置。
只有经历了上面的磕磕碰碰,才能真正懂 includeIf 的好,使用的前提是我们需要对文件夹的设计有个简单的规划,例如我的方式是在用户根目录 ~ 下创建两个目录。
另外,作为程序猿,当我有了 Git 这个锤子,自然是希望所有的东西都能像个钉子,连 Git 的个性化配置也都希望能用 Git 进行管理,配合 Dotfile 就可以让我们无惧换电脑需要重新配置的问题,因此我的方案中还需要创建一个新的项目,包含下面 4 个文件。
[user]
name = baijunyao
email = baijunyao@baijunyao.com
[core]
excludesfile = ~/Sites/gitconfig/.gitignore_global
[includeIf "gitdir:~/Sites/"]
path = ~/Sites/gitconfig/.gitconfig-individual
[includeIf "gitdir:~/Projects/"]
path = ~/Sites/gitconfig/.gitconfig-company
上面设置从下往上看,意思分别是
这样只需要把项目放对目录,就再也不会混乱了,即便没有放到 Projects 和 Sites 目录中,也有默认的全局用户兜底,不至于出现奇奇怪怪的用户的提交。
[user]
name = Junyao Bai
email = junyao.bai@company.com
[user]
name = baijunyao
email = "baijunyao@baijunyao.com"
.idea
.DS_Store
把上面这 4 个文件组成的项目放到 ~/Sites/gitconfig 目录,然后在 Git 的全局配置文件 ~/.gitconfig 中只需要加上下面这一行就可以了。
[include]
path = ~/Sites/gitconfig/.gitconfig
本文为白俊遥原创文章,转载无需和我联系,但请注明来自白俊遥博客https://baijunyao.com 欢迎捐赠赞赏加入组织创建QQ群及捐赠渠道
6666 :房贷的发放的
2024-03-14 13:42:34 回复
默然 :
2022-04-29 00:56:47 回复
三秦大地 :1
2022-03-13 01:46:10 回复
♍帅Hover✅ :785
2022-02-07 22:37:11 回复
麦志健 :好久没更新了喔
2022-01-06 23:55:55 回复
龙城男人 :请先登录后回复评论
2022-03-20 01:29:45 回复
风三郎 :能否加一个友情链接 https://www.fengsanlang.cn/
2022-01-02 07:17:31 回复
云淡风晴 :已添加
2022-01-02 17:44:25 回复
青春走了还有ᥬ痘᭄ :的风格
2021-12-16 18:29:09 回复
最新评论