有没有办法在本地git配置文件中取消设置全局git配置节?

vybvopom  于 2023-01-19  发布在  Git
关注(0)|答案(2)|浏览(184)

我的~/.gitconfig包含这个include节,它继承自一个团队范围的配置文件。

[include]
    ~/.gitconfig.team

但是,我有一些个人repos,我不想继承这个.gitconfig.team
有没有办法在我的个人资料库中覆盖/强制取消设置此部分?例如,我可以在personal_project/中添加一些内容到.git/config
我对这样一种解决方案很感兴趣:我可以在个人资料库中修改配置,而不是在团队资料库中。

xdyibdwo

xdyibdwo1#

没有

Git配置包括操作:
就好像在include指令的位置找到了它的内容一样
参考
这意味着您不能覆盖/删除include本身,一旦发现它,就会注入/加载被包含文件的内容。
当然,您可以在更具体的配置文件中覆盖它包含的设置:

# ~/.git.config.team
[user]
    name = name

本地,通过git config user.name nic

# /some/project/.git/config
[user]
    name = alias

屈服:

/some/project $ git config user.name
alias
/some/project $
jslywgbw

jslywgbw2#

从git 2.13开始,你可以使用条件配置include来实现你的要求。
例如,如果你把你的个人仓库保存在一个特定的目录中,你可以引入一个git config来覆盖团队配置中的条目:

[include]
    ~/.gitconfig.team
[includeIf "gitdir:personal_project/"]
    ~/.gitconfig.personal

或者,如果您将团队repos保存在特定目录中,您可以更改团队配置,使用includeIf而不是include

[includeIf "gitdir:team_project/"]
    ~/.gitconfig.team

相关问题