You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins下游任务成功后如何将Bitbucket提交信息作为邮件正文发送

核心原因说明

Jenkins 内置 Git 环境变量 $GIT_COMMIT 存储的是本次构建对应 Git 提交的哈希值,并非提交信息,所以你之前输出的哈希字符串属于该变量的预期返回结果,需要自行通过命令拉取对应提交的信息内容。


解决方案步骤

1. 第1个任务获取原始提交信息

在第1个任务的「执行Shell」构建步骤中添加如下命令,通过提交哈希拉取对应提交信息:

# 拉取当前提交的完整提交信息
COMMIT_MSG=$(git log --format=%B -n 1 $GIT_COMMIT)
# 将变量写入属性文件,用于环境变量注入
echo "COMMIT_MSG=${COMMIT_MSG}" > commit_info.properties

在第1个任务中安装环境变量注入插件,在「构建后操作」选择「注入环境变量到构建进程」,属性文件路径填写commit_info.properties,保存后第1个任务的构建环境中就会存在COMMIT_MSG变量,值为你需要的原始提交信息。

2. 跨任务传递提交信息变量

因为你的5个任务是串联触发的,需要在每个上游任务触发下游任务时传递该变量:

  • 打开第1/2/3/4号任务的配置页,在「构建后操作」的「触发其他项目构建」配置项中,勾选「传递构建变量到被调用项目」,并在「预定义参数」栏添加如下内容:
COMMIT_MSG=${COMMIT_MSG}

配置完成后,提交信息变量会顺着任务链路一直传递到第5个任务。

3. 第5个任务发送邮件调用变量

第5个任务执行成功后,在邮件发送配置的正文模板中直接引用${COMMIT_MSG}变量,即可将原始提交信息原样发送给收件人。


内容的提问来源于stack exchange,提问作者Mayur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 09:18:01