core.symlinks 条目在 git 配置列表中输出了两次?
core.symlinks entry outputted twice in git config list?
我在配置列表*中发现以下条目翻了一番:
git config -l | sort
... (irrelevant here)
core.symlinks=false
core.symlinks=false
... (irrelevant here)
经过短暂的思考,我想我明白了原因:嘿,当然!我没有指定配置列表的来源,因此我看到的输出是所有来源的条目的串联......(我记得之前观察过这个结果,对于我在本地和全局级别设置的条目)所以(在a short visit in the doc之后)我单独查看了:
git config -l --local | sort
... (irrelevant here)
core.symlinks=false
... (irrelevant here)
git config -l --global | sort
(no line about core.symlinks at all)
奇怪。 local
中的一个和 global
中的 none。也许 system
?
git config -l --system | sort
(no line about core.symlinks at all)
此时我无法再支持我的第一个猜测...那么 "other" 条目来自哪里,如果不是来自 global
或 system
?是否只是 git 构建配置列表输出的方式导致了这个奇怪的结果?
*(在搜索完全不相关的东西时。所以我是第一个承认这个问题对完成任何任务都不重要的人,我只是想找出我观察到的背后的原因是什么,如果任何人都知道)
查看您当前拥有的所有 git 设置(包括用户级别和通用级别)运行:
git config --list --show-origin
Note
Remember that if it is located in a directory that contains a git project, you will also get the configuration of it.
git 配置级别和文件 1
在我们进一步讨论 git config
用法之前,让我们花点时间介绍一下配置级别。 git config
命令可以接受参数来指定要操作的配置级别。以下配置级别可用:
--本地
默认情况下,如果没有传递配置选项,git config
将写入本地级别。本地级别配置应用于上下文存储库 git config
被调用。本地配置值存储在一个文件中,该文件可以在存储库的 .git 目录中找到:.git/config
--全局
全局级别配置是特定于用户的,这意味着它适用于操作系统用户。全局配置值存储在位于用户主目录的文件中。 ~ /.gitconfig
在 unix 系统上 C:\Users\<username>\.gitconfig
在 windows
--系统
系统级配置应用于整台机器。这涵盖了操作系统和所有存储库上的所有用户。系统级配置文件位于系统根路径之外的 gitconfig
文件中。 $(prefix)/etc/gitconfig
在 Unix 系统上。在 windows 上,此文件可以在 Windows XP 上的 C:\Documents and Settings\All Users\Application Data\Git\config
中找到,在 Windows Vista 和更高版本上的 C:\ProgramData\Git\config
中可以找到。
因此配置级别的优先级顺序是:本地、全局、系统。这意味着在查找配置值时,Git 将从本地级别开始并向上冒泡到系统级别。
我在配置列表*中发现以下条目翻了一番:
git config -l | sort
... (irrelevant here)
core.symlinks=false
core.symlinks=false
... (irrelevant here)
经过短暂的思考,我想我明白了原因:嘿,当然!我没有指定配置列表的来源,因此我看到的输出是所有来源的条目的串联......(我记得之前观察过这个结果,对于我在本地和全局级别设置的条目)所以(在a short visit in the doc之后)我单独查看了:
git config -l --local | sort
... (irrelevant here)
core.symlinks=false
... (irrelevant here)
git config -l --global | sort
(no line about core.symlinks at all)
奇怪。 local
中的一个和 global
中的 none。也许 system
?
git config -l --system | sort
(no line about core.symlinks at all)
此时我无法再支持我的第一个猜测...那么 "other" 条目来自哪里,如果不是来自 global
或 system
?是否只是 git 构建配置列表输出的方式导致了这个奇怪的结果?
*(在搜索完全不相关的东西时。所以我是第一个承认这个问题对完成任何任务都不重要的人,我只是想找出我观察到的背后的原因是什么,如果任何人都知道)
查看您当前拥有的所有 git 设置(包括用户级别和通用级别)运行:
git config --list --show-origin
Note
Remember that if it is located in a directory that contains a git project, you will also get the configuration of it.
git 配置级别和文件 1
在我们进一步讨论 git config
用法之前,让我们花点时间介绍一下配置级别。 git config
命令可以接受参数来指定要操作的配置级别。以下配置级别可用:
--本地
默认情况下,如果没有传递配置选项,git config
将写入本地级别。本地级别配置应用于上下文存储库git config
被调用。本地配置值存储在一个文件中,该文件可以在存储库的 .git 目录中找到:.git/config
--全局
全局级别配置是特定于用户的,这意味着它适用于操作系统用户。全局配置值存储在位于用户主目录的文件中。~ /.gitconfig
在 unix 系统上C:\Users\<username>\.gitconfig
在 windows--系统
系统级配置应用于整台机器。这涵盖了操作系统和所有存储库上的所有用户。系统级配置文件位于系统根路径之外的gitconfig
文件中。$(prefix)/etc/gitconfig
在 Unix 系统上。在 windows 上,此文件可以在 Windows XP 上的C:\Documents and Settings\All Users\Application Data\Git\config
中找到,在 Windows Vista 和更高版本上的C:\ProgramData\Git\config
中可以找到。
因此配置级别的优先级顺序是:本地、全局、系统。这意味着在查找配置值时,Git 将从本地级别开始并向上冒泡到系统级别。