全局 .gitconfig 文件可以嵌套多层吗?
Can a global .gitconfig file be nested multiple layers deep?
我见过的所有全局 .gitconfig 文件的例子都是这样的:
[user]
name = John Doe
email = example@email.com
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
我以前从未见过 [header] 嵌套在另一个 [header] 中。像这样:
[user]
name = John Doe
email = example@email.com
[foo]
bar = baz
在某些情况下这可能吗?全局 .gitconfig 文件可以嵌套多层吗?
Is this possible in some circumstance?
没有
总是“可能的”。您可以编写自己的解析器或补丁 git
来支持这种奇怪的约定。
Can a global .gitconfig file be nested multiple layers deep?
没有
格式是 INI file. Leading whitespaces are ignored,因此 <space><space><tab>[foo]
与 [foo]
相同,将引入新的部分。
Git 配置文件的语法是修改后的 INI 文件语法。
一些修改后的 INI 文件语法 (or syntaces, if you want to fake up an English plural from Greek roots) 允许这种嵌套,但 Git 不允许。
在Git形式中:
[top "middle"]
bottom = value
代表git config
结构:
git config top.middle.bottom value
(添加 --global
或 --file
指令以选择要设置的文件)。这离嵌套很近了。您会看到这些具有多个 remote
定义,例如:
[remote "origin"]
url = ...
fetch = +refs/heads/*:refs/remotes/origin/*
[remote "upstream"]
url = ...
fetch = +refs/heads/*:refs/remotes/upstream/*
在本地 .git/config
文件中。
我见过的所有全局 .gitconfig 文件的例子都是这样的:
[user]
name = John Doe
email = example@email.com
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
我以前从未见过 [header] 嵌套在另一个 [header] 中。像这样:
[user]
name = John Doe
email = example@email.com
[foo]
bar = baz
在某些情况下这可能吗?全局 .gitconfig 文件可以嵌套多层吗?
Is this possible in some circumstance?
没有
总是“可能的”。您可以编写自己的解析器或补丁 git
来支持这种奇怪的约定。
Can a global .gitconfig file be nested multiple layers deep?
没有
格式是 INI file. Leading whitespaces are ignored,因此 <space><space><tab>[foo]
与 [foo]
相同,将引入新的部分。
Git 配置文件的语法是修改后的 INI 文件语法。
一些修改后的 INI 文件语法 (or syntaces, if you want to fake up an English plural from Greek roots) 允许这种嵌套,但 Git 不允许。
在Git形式中:
[top "middle"]
bottom = value
代表git config
结构:
git config top.middle.bottom value
(添加 --global
或 --file
指令以选择要设置的文件)。这离嵌套很近了。您会看到这些具有多个 remote
定义,例如:
[remote "origin"]
url = ...
fetch = +refs/heads/*:refs/remotes/origin/*
[remote "upstream"]
url = ...
fetch = +refs/heads/*:refs/remotes/upstream/*
在本地 .git/config
文件中。