Configuration Gerrit设置默认情况下更改发生合并冲突时如何通知作者

Configuration Gerrit设置默认情况下更改发生合并冲突时如何通知作者,configuration,gerrit,Configuration,Gerrit,对于所有项目或特定项目,我无法找到一种方法来通知提交给Gerrit的开放更改的作者,该更改现在存在合并冲突 我查看了和中的文档 如果默认情况下,项目所有者希望其开发团队在默认情况下拥有这些通知,那么这将非常有用,不是向团队中的所有人发出通知,而是仅向现在存在合并冲突的开放更改的作者发出通知 根据文档,特定用户可以在“设置”>“关注的项目”中全局添加此特定电子邮件通知,包括: 回购:所有项目 搜索表达式:所有者:自身状态:打开-可合并 选择“更改” 您不能使用关注的项目来实现这一点。您需要定期执

对于所有项目或特定项目,我无法找到一种方法来通知提交给Gerrit的开放更改的作者,该更改现在存在合并冲突

我查看了和中的文档

如果默认情况下,项目所有者希望其开发团队在默认情况下拥有这些通知,那么这将非常有用,不是向团队中的所有人发出通知,而是仅向现在存在合并冲突的开放更改的作者发出通知

根据文档,特定用户可以在“设置”>“关注的项目”中全局添加此特定电子邮件通知,包括:

  • 回购:所有项目
  • 搜索表达式:所有者:自身状态:打开-可合并
  • 选择“更改”

您不能使用关注的项目来实现这一点。您需要定期执行脚本,以便使用REST在Gerrit中搜索此信息

步骤1

查找存在合并冲突的打开的更改

以下命令将搜索所有打开的更改(非在制品、非私有和不可合并),并返回其更改编号和更改所有者id:

curl -s --request GET --user USER:PASS https://GERRIT-SERVER/a/changes/?q=status:open+AND+-is:wip+AND+-is:private+AND+-is:mergeable | sed 1d | jq --raw-output '.[] | [._number, .owner._account_id | tostring] | join(" ")'
步骤2

查找用户的电子邮件

以下命令将搜索更改所有者id并返回其电子邮件:

curl -s --request GET --user USER:PASS https://GERRIT-SERVER/a/accounts/CHANGE-OWNER-ID | sed 1d | jq --raw-output .email
步骤3

发送电子邮件通知