Git是如何知道我的电子邮件地址的?

3

git log 显示了我提交日志中的全名和电子邮件地址。我不记得曾经告诉过 git 我是谁。我是忘了还是 git 从其他地方获取了此信息?(Linux)


3个回答

5

很可能是在全局git配置中配置的。

您可以通过运行以下命令进行验证:

git config --global --get user.email

更一般地,您可以使用以下命令列出整个全局配置:

git config --global -l

您可能在很长时间以前配置了它,然后就忘记了。

是的 - @spraff,您可能在为另一个存储库安装git时首次设置了这个,但是由于--global标志表明,除非被覆盖,否则这些配置设置将用于所有存储库。 - Lix

1

通过以下方式检查您的电子邮件配置:

git config --list

几乎在所有情况下,正确设置电子邮件地址都是必要的:
git config user.email "foo@example.com"

电子邮件是用户身份验证的第一个标准。


0

你可能没有明确地向git提供你的地址。git commit-tree文档描述了当所有细节未知时,git如何近似你的归属。

虽然父对象ID在命令行上提供,但作者和提交者信息是从以下环境变量中获取的(如果设置):

  • GIT_AUTHOR_NAME
  • GIT_AUTHOR_EMAIL
  • GIT_AUTHOR_DATE
  • GIT_COMMITTER_NAME
  • GIT_COMMITTER_EMAIL
  • GIT_COMMITTER_DATE

(注意:<>\n字符被剥离。)

如果这些环境变量中的某些变量未设置,则从配置项user.nameuser.email中获取信息,或者如果不存在,则从环境变量EMAIL中获取信息,或者如果未设置,则使用用于传出邮件的主机名和系统用户名(从/etc/mailname中获取并在该文件不存在时回退到完全限定的主机名)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接