Post Merge Rename

🏷️ 合并即归档,分支永留存

自动将已合并分支重命名为保留历史记录的命名格式,避免误删分支,支持Git工作流自动化。

收藏
3.6k
安装
1.3k
版本
1.9.68
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

post-merge-rename 是一款专为 Git 工作流设计的分支管理工具,核心功能是在代码合并后自动重命名源分支,而非删除。通过扫描本地已合并到主分支(如 main)的分支,将其重命名为 原分支名--merged-YYYY-MM-DD 格式,实现历史可追溯且仓库整洁的双重目标。

使用方式灵活:可直接运行脚本批量处理所有已合并分支,添加 --dry-run 参数预览变更,或指定单个分支精准操作。该工具作为 wip-release 工作流的第 10 步自动执行,也可独立集成到 CI/CD 管道中。

显著优点

历史完整性保障:彻底杜绝分支误删风险,保留完整开发脉络,便于回溯代码演进过程与审计需求。

自动化零干预:无需手动判断哪些分支已合并,脚本自动识别合并日期并完成命名,减少人为疏漏。

非侵入式设计:仅操作已合并分支,跳过含 --merged- 标识的历史分支和当前活跃分支,安全性高。

轻量无依赖:仅需系统级 gitbash,无额外运行时或库依赖,适配绝大多数 Unix-like 环境。

潜在局限

  • 平台限制:依赖 Bash 环境,Windows 原生支持需借助 WSL 或 Git Bash,纯 PowerShell 环境不适用。
  • 远程同步风险:执行后会推送重命名分支并删除旧远程分支名,若团队协作中有人基于旧分支名操作,可能引发引用失效。
  • 日期精度依赖:合并日期取自 Git 历史记录,若存在变基(rebase)或强制推送等改写历史操作,日期可能不准确。
  • 无冲突处理机制:对重命名冲突(如目标名已存在)未明确说明处理策略,需人工介入。

适合人群

  • 采用 Git Flow 或类似分支策略的开发团队
  • 需要严格保留审计历史的金融、医疗等合规行业
  • 频繁发布、追求自动化工作流的 DevOps 工程师
  • 厌恶 git branch -D 风险、偏好保守分支管理的开发者

常规风险

| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 远程引用失效 | 旧分支名被删除后,团队成员本地可能残留过期引用 | 运行后通知团队执行 `git fetch --prune` |
| CI/CD 中断 | 若管道硬编码分支名,重命名后触发条件失效 | 采用通配符或标签触发,避免硬编码 |
| 误操作未合并分支 | 脚本逻辑理论上会跳过,但仍需 review `--dry-run` 输出 | 养成预览习惯,尤其多人协作仓库 |

Post Merge Rename 内容

手动下载zip · 3.2 kB
package.jsonapplication/json
请选择文件