jenkins 从哪里获取电子邮件地址 Git

Where does jenkins get email addresses from in Git

我安装了最新版本的 Jenkins 以及电子邮件扩展插件。计划在构建失败时向所有相关补丁作者发送电子邮件。

我看到的问题是发送的电子邮件地址已过期。我让我的团队更新了他们的本地 git 配置设置,以确保使用当前用户电子邮件地址注册新签到,但这似乎无法解决问题。

Jenkins 从哪里获得 Git 中的电子邮件地址?如果它们不是最新的,您如何更新它们?

更新:

Peter 的回答是很好的信息,但这只是一个开始。我还没有完全解决这个问题,但我注意到了一些事情。虽然有 git 本身用于签到的权限,但 GitHub 可以有多个备用电子邮件地址,并且还有各种其他第三方工具包装或与 Git 交互。 (例如Visual Studio)。

似乎其中一些工具可以将凭据插入签到。如果您正在尝试解决此问题,请检查所有正在使用的工具的凭据。

此外,请检查 Jenkins 中的用户页面。 Jenkins 会自动吸收在构建分支机构时遇到的用户,如果有错误输入的权限(例如,使用个人电子邮件地址而不是公司地址),它们将显示在那里。这是找到 git 具有错误 git 配置的用户的好方法。

Jenkins 从与提交关联的作者处读取提交数据,您可以使用

查看这些数据
git log

每次提交都会显示

Author: Author Name <you@example.com>

您可以修改现有提交的作者

git commit --amend --author="Author Name <you@example.com>"

为您的机器设置默认作者电子邮件

git config --global user.email "you@example.com"

并且您可以在本地将其设置为您当前所在的存储库

git config user.email "you@example.com"

电子邮件扩展插件

开发者

添加此收件人提供商以将电子邮件发送给签入上次构建代码的任何人。该插件将根据提交者的 ID 和来自“配置系统”页面的“扩展电子邮件通知”部分的附加默认用户电子邮件后缀生成一个电子邮件地址。例如,如果更改是由 ID 为 first.last 的人提交的,并且默认用户电子邮件后缀为 @example.com,则将向 first.last@[ 发送一封电子邮件。 =17=].