我想知道 Git 存储用户信息的位置。我创建了一个仓库,我和我的朋友都在上面工作。当我们提交时,我们可以看到每个修订版本的不同作者是我们两个人。虽然他使用 git config --global
在他的主目录下创建了一个 .gitconfig 文件,但我在我的主目录中找不到这个文件。那么我的用户信息存储在哪里?git config --global
只影响单个登录用户吗?
我想知道 Git 存储用户信息的位置。我创建了一个仓库,我和我的朋友都在上面工作。当我们提交时,我们可以看到每个修订版本的不同作者是我们两个人。虽然他使用 git config --global
在他的主目录下创建了一个 .gitconfig 文件,但我在我的主目录中找不到这个文件。那么我的用户信息存储在哪里?git config --global
只影响单个登录用户吗?
默认情况下,配置文件有3个路径。
<your_git_repository>/.git/config
~/.gitconfig
$(prefix)/etc/gitconfig
--global
选项始终使用主目录。请注意,git
将尝试读取所有这些配置文件。如果找到一个,它会加载它并移动到下一个。本地的优先级高于全局的,而全局的优先级高于系统范围的。它使用了一种简单的键合并算法。
如果您没有在配置文件中存储用户信息,Git会在环境变量中查找提交者的信息,使用变量GIT_COMMITTER_NAME
,GIT_COMMITTER_EMAIL
,GIT_AUTHOR_NAME
和GIT_AUTHOR_EMAIL
。如果缺少这些变量,则使用您的用户名和主机名构造一个值。因此,即使没有任何用户信息存储在配置文件中,两个用户的提交者信息也会不同。
$(prefix)/etc/gitconfig
),全局(用户位于 ~/.gitconfig
)和本地(存储在 .git/config
文件中)可以设置git配置。任何配置都应该存在这三个位置之一才能被git使用。GIT_CONFIG
或其他环境变量,则可能来自其中的某些值。如果您无法在任何配置文件中找到所需内容,或者甚至找不到这些文件,请将所有GIT_*环境变量视为最后的选择。~/.git-credentials
文件中找到了我的用户名。希望这能帮到你。
您还可以使用以下命令列出配置:git config --list