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

如何在CI/CD层面修改默认Squash And Merge提交信息生成算法

关于在CI/CD中调整Squash And Merge提交信息的问题解答

是否支持在CI/CD层面实现该需求

可以实现。你需要将对应的CI流水线触发时机设置为合并请求完成合并后,不要在合并前的预检查阶段执行该操作,避免和平台原生合并流程产生冲突。同时需要给CI使用的服务账号开通对应仓库的代码推送权限,若你的默认分支开启了分支保护规则,还需要给该账号配置分支保护的豁免权限,否则修改后的提交无法推送到远端。

是否可以在脚本中获取提交信息生成合规的新提交信息

完全可以,主流代码托管平台都提供了对应的能力:

  • 平台内置的CI变量可以直接拿到当前合并请求的基础信息,包括PR标题、PR描述、创建人信息、关联的工单/Issue编号等,无需手动爬取页面
  • 你可以通过git命令拉取本次合并请求包含的所有提交记录,参考命令:git log <目标分支名>..<PR源分支名> --pretty=format:"%s %b"
  • 拿到所有所需信息后,按照团队规范拼接成合规的提交信息,再执行git commit --amend -m "拼接后的合规提交信息"修改Squash生成的提交,最后推送到远端默认分支即可

补充建议:如果你的团队使用GitHub、GitLab这类主流代码托管平台,优先使用平台原生提供的Squash提交模板功能,无需额外开发CI脚本,直接在仓库设置中配置模板占位符,合并时会自动生成符合规范的提交信息,落地成本更低、稳定性更高。

参考资料方向

你可以直接检索对应平台的官方文档获取所需内容:

  • 对应平台的CI/CD内置变量列表
  • 平台Squash Merge功能的配置说明
  • Git commit修改相关的官方操作指南

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 08:36:02