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

Github Action run-name不再显示提交消息的问题求助

解决Github Action run-name显示合并提交消息的问题

问题原因

当你通过PR合并代码到main分支时,触发的push事件对应的github.event.head_commit是合并提交,而非原分支的提交。此时github.event.head_commit.message自然就是默认的“Merge branch 'main' of ...”内容,所以直接设置这个变量不会改变显示结果。

解决方案

根据你的触发场景,选择对应的配置方式:

1. 针对PR合并到main的场景

如果代码主要通过PR合并到main,建议修改工作流触发条件,监听PR合并事件,直接用PR标题作为run-name:

on:
  pull_request:
    types: [closed]
    branches: [main]

run-name: ${{ github.event.pull_request.title }} (PR #${{ github.event.pull_request.number }})

这样PR合并到main时,run-name会显示PR标题和编号,更直观。

2. 保留push触发,适配直接提交和合并提交

如果需要同时支持直接push到main和PR合并两种场景,可通过条件表达式区分合并提交,提取有效消息:

on:
  push:
    branches: [main]

run-name: ${{ startsWith(github.event.head_commit.message, 'Merge') && github.event.commits[-1].message || github.event.head_commit.message }}

这个配置会判断当前提交是否为合并提交(以Merge开头),若是则取最后一个普通提交的消息;否则直接使用当前提交消息。

3. 排查配置有效性

你提到仅修改过云服务账户角色,这通常不影响run-name变量取值,但可以检查:

  • 工作流文件语法是否正确,run-name是否放在on字段之后、jobs字段之前的正确位置
  • 当前触发push事件的提交类型,确认是否是合并提交导致的消息变化

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 20:44:53