“ 本地多个 Git 邮箱身份,commit 的时候不方便,怎么整? ”
以下是有关如何管理多个 Git 身份例如个人、工作、client1、client2的快速提示。 我将 Git 存储库分为三个级别。我的个人项目位于一个~/sources目录中。我所有的工作项目都位于~/work.这是第一级。 2 级是客户端,例如~/work/client1。当然,第 3 级是项目存储库~/work/client1/foo-api. 这就是我的工作目录的组织方式
/Users/garrit/work
client1
foo-api
foo-ios
foo-android
client2
bar-ios
bar-middleware
现在,假设client2我们需要使用与默认工作电子邮件不同的身份进行提交。除此之外,您可能还有一个用于您自己的项目的个人电子邮件地址。你是如何做到这一点的?
.gitconfig 包括
Git 的全局配置文件是~/.gitconfig.如果您曾经设置过如下参数git config user.name “Foo Bar”这就是它的最终结果。 .gitconfig 文件的一个很棒的功能是您可以有条件地包含其他配置文件,这就是诀窍。这是我的~/.gitconfig文件
[user]
name = Garrit Franke
email = garrit@slashdev.space
[includeIf "gitdir:~/work/"]
path = ~/.gitconfig-work
[includeIf "gitdir:~/work/client2/"]
path = ~/.gitconfig-client2
[includeIf "gitdir:~/sources/"]
path = ~/.gitconfig-personal
# ...
默认情况下,我的姓名和电子邮件始终设置为我的个人身份。我还在这里存储了一些其他全局设置,但这些与本文无关。如果存储库位于该目录内,则会包含~/work一个名为的文件。~/.gitconfig-work这只是另一个 gitconfig 文件。这就是我的情况
[user]
name = Garrit Franke
signingkey = 12345678
email = garrit@work.de
[commit]
gpgsign = true
我希望你能明白这是怎么回事。对于每个身份,您都保留一个单独的 gitconfig 文件并将其包含在 main 中~/.gitconfig。至关重要的是,这要求您按客户分组组织存储库。 这个技巧大大简化了我的项目启动过程。不再有客户提出“您忘记更新您的电子邮件地址”的请求! 原文https://garrit.xyz/posts/2023-10-13-organizing-multiple-git-identities
每日一言
""你的脸,犹如你的人生,一样坎坷。""