合并日志应清晰说明集成内容、原因及影响,开头用merge/hotfix/reintegrate等前缀标明类型,标题行动词开头限50字符说明目的,正文分项列出变更、依赖、数据库/配置更新,并提交后验证与同步。

合并分支时的日志不是“完成合并”的打卡记录,而是告诉所有人“这次集成做了什么、为什么这么做、影响在哪里”。写得清楚,回溯就省力;写得模糊,排查就抓瞎。
合并前先明确类型和范围
日志开头用类型前缀标明合并性质,避免笼统写“merge from xxx”:
- merge: 合并 feature/login 分支至 trunk —— 功能开发完成后的主干集成
- hotfix: 合并 hotfix/v2.1.3 至 trunk 和 release/v2.1 —— 紧急修复需双线同步
- reintegrate: 重新集成 dev 分支至 trunk(含重构调整) —— 适用于长期迭代后回归主干
不推荐:“merge branch”“sync code”这类无信息量的表述。
标题行说清动作与目标
首行控制在50字符内,动词开头,说明合并目的而非操作本身:
- ✅ “merge: 登录模块重构完成,接入统一认证服务”
- ✅ “hotfix: 修复支付回调超时导致订单状态不一致”
- ❌ “merged dev to trunk”(没说改了什么)
- ❌ “update login branch”(模糊且被动)
正文中列出关键变更与依赖项
空一行后补充正文,用短横线分项说明,方便快速扫描:
- - 修改:AuthenticationService 接口升级,兼容 OAuth2.1 协议
- - 新增:/api/v2/auth/callback 处理逻辑
- - 删除:旧版 LocalAuthFilter 及其配置项
- - 影响:所有调用 /login 的前端页面需适配新 token 格式
- - 关联:JIRA-7892、PR#456(如有对应代码评审)
若涉及数据库变更或配置更新,务必单列说明,例如:
- DB:执行 migration/20260615_add_auth_token_table.sql
- Config:更新 application-prod.yml 中 auth.service.url
提交后立即验证并标记上下文
合并提交成功后,别直接关终端:
- 核对返回的版本号(如 Committed revision 12987),在 SVN Web 界面确认该版本包含预期的 mergeinfo 属性和变更文件
- 检查 svn log -l 5 能否清晰看到本次合并与源分支的关联(SVN 自动记录 mergeinfo,但日志要让人一眼读懂)
- 在项目协作工具(如 Jira、钉钉群)中同步说明:“trunk r12987 已集成登录重构,前端同学请参考新版 API 文档 v2.3”











