Git提交未使用存储库配置的'user.name'值

Git提交未使用存储库配置的'user.name'值,git,git-config,Git,Git Config,我在一个存储库中配置了本地user.name和user.email。我已经验证了在git repo中运行git config user.name和git config user.email可以提供正确的输出,并且我的.git/config文件也正确地显示了它们-但是我的提交仍然使用我的全局user.name(尽管它们确实使用了正确的本地user.email)。我运行的是macOS 10.13.4和Git 2.17.1——问题发生在命令行Git和IntelliJ提交上。有什么问题吗?如果git c

我在一个存储库中配置了本地
user.name
user.email
。我已经验证了在git repo中运行
git config user.name
git config user.email
可以提供正确的输出,并且我的
.git/config
文件也正确地显示了它们-但是我的提交仍然使用我的全局
user.name
(尽管它们确实使用了正确的本地
user.email
)。我运行的是macOS 10.13.4和Git 2.17.1——问题发生在命令行Git和IntelliJ提交上。有什么问题吗?

如果
git config user.name
打印了正确的名称,但
git commit
没有使用该名称,则必须有内容覆盖了配置的值

最明显的(咳嗽)候选者是一名医生,在大多数情况下都是这样。您可以使用以下方法快速测试是否存在这种情况:

$git var git|u AUTHOR|u IDENT|sed's/@/'
Chris Torek 1528489689-0700
vs:

$GIT\U AUTHOR\U NAME='A U Thor'GIT\U AUTHOR\U电子邮件=thor@example.comgit var git_AUTHOR_IDENT
美国雷神1528489743-0700

这显示了如果我没有设置这些环境变量的话,我是如何过度编写可能会出现的名称和电子邮件地址的。

是的,就是这么简单,我设置了
GIT\u AUTHOR\u name
set!
$ git var GIT_AUTHOR_IDENT | sed 's/@/ /'
Chris Torek <chris.torek gmail.com> 1528489689 -0700
$ GIT_AUTHOR_NAME='A U Thor' GIT_AUTHOR_EMAIL=thor@example.com git var GIT_AUTHOR_IDENT
A U Thor <thor@example.com> 1528489743 -0700