jenkins从Git

时间:2017-02-20 21:08:22

标签: git jenkins jenkins-email-ext

我已经设置了最新版本的Jenkins以及电子邮件扩展插件。每当构建对所有相关补丁作者都失败时,就会发送电子邮件。

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

Jenkins从哪里获取Git中的电子邮件地址,以及当它们不是最新时如何更新它们?

更新

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

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

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

2 个答案:

答案 0 :(得分:1)

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"

答案 1 :(得分:1)

电子邮件扩展插件

开发人员

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