2012-03-09 124 views
8

git版本变成了可用的git config --local选项,我可以在哪里阅读更多关于它的内容?git何时为git config命令引入“--local”开关?

我认为不提供--global会自动假定它是一个本地配置变量。为什么这个新选项是必需的?

+0

至于为什么有必要,可以推测它是用于过滤的,例如,使用--list – johnny 2012-03-09 14:07:54

+0

相关:http://stackoverflow.com/questions/5816134/finding-a-git-commit-that-introduced-a-string-in-any-branch – 2016-07-07 20:34:09

回答

10

由于git的源代码维护在Git中,我们可以发现,推出了--local选项修订:

commit 57210a678a8bedd222bf4478eeb0a664d9dd5369 
Author: Sverre Rabbelier <[email protected]> 
Date: 2010-08-03 20:59:23 -0500 

    config: add --local option 

    This is a shorthand similar to --system but instead uses 
    the config file of the current repository. 

看来,这种变化最早出现在版本1.7.4于2010年年底或就出来了所以。

据我可以快速查看源代码(builtin/config.h)和手册页告诉,默认为本地除非某些环境变量设置,特别$GIT_CONFIG--local选项显式覆盖任何环境变量设置。

请参阅VonC's answer关于--local语义的更多信息(文档在我最初发布此答案后进行了更新)。

+0

正是我在找!谢谢基思。 – 2012-03-09 11:38:34

7

。应注意--local选项的描述都只是在最近(2013年6月,三年后)进行了更新:

Commit 560d4b86abc547dfb10b116ab99c800d68ae8849

配置:添加的--local选项描述

它在从一般性描述中提到的选项列表中被忽略。
加入它是为了完整。

现在,说明是:

--local:: 
  • 对于文字选项:写入仓库.git/config文件。
    这是默认行为。
  • 对于阅读选项只能从存储库.git/config而不是从所有可用文件中读取。
+0

感谢您的更新。 – 2013-06-27 18:10:05