我有一个找不到的别名。打字git help subaddvim
给了我:
`git subaddvim' is aliased to `log HEAD'
我想我是这样定义的:
git config --local alias.subaddvim 'log HEAD'
我查看了$repo_path/.gitconfig
, ~/.gitconfig
, /etc/gitconfig
,但它们都没有 subaddvim 条目。
我还能在哪里看?
Scott Chacon 的优秀书籍“Pro Git”涵盖了存储内容的位置,以及传递git config
给该位置读/写的选项:
Git 带有一个名为 git config 的工具,可让您获取和设置配置变量,这些变量控制 Git 外观和操作的各个方面。这些变量可以存储在三个不同的位置:
/etc/gitconfig 文件:包含系统上每个用户及其所有存储库的值。如果您将选项--system传递给 git config,它会专门从此文件中读取和写入。
~/.gitconfig 文件:特定于您的用户。您可以通过传递--global选项使 Git 专门读取和写入此文件。
您当前使用的任何存储库的 git 目录(即 .git/config)中的配置文件:特定于该单个存储库。每个级别都会覆盖前一级别的值,因此 .git/config 中的值优于 /etc/gitconfig 中的值。
您可以让 git 告诉您使用该--list
选项的位置定义了什么:
# shows all settings
git config --list
# shows system settings
git config --list --system
# shows user settings
git config --list --global
# shows project settings
git config --list --local
--local
使用未记录(或已过时)标志和无标志之间没有区别。$repo_path/.gitconfig
Git 永远不会在您的存储库根目录 ( )中查找 gitconfig 。回购本地配置更改位于.git/config
.
git help config
解释有效选项:
--global 用于写入选项:写入全局 ~/.gitconfig 文件而不是存储库 .git/config。
For reading options: read only from global ~/.gitconfig rather than from
all available files.
--system 用于写入选项:写入系统范围的 $(prefix)/etc/gitconfig 而不是存储库 .git/config。
For reading options: read only from system-wide $(prefix)/etc/gitconfig
rather than from all available files.
(使用 git 版本 1.7.9)
您可以尝试使用此搜索(从您的 repo 根目录并假设 git 安装在 /bin 中):
grep subaddvim .git/config ~/.gitconfig /etc/gitconfig