SuperAPI AI 工具集

merge-cascade

通用与其它

查看项目

更新于 10-16 00:05

技能介绍

用途:把改动沿发布分支链逐级向下合并,顺序为 master → X.0 → X.1 → … → X.N,并在过程中解决冲突、把每个分支推送到其配置的远程。

主要能力:先检查工作区是否干净(git status --porcelain),不干净则停止;解析 .git/config 找出符合 X.Y 模式的版本分支,按次版本升序构建链条,并读取每个分支配置的远程(master 固定为 origin);依次执行合并、冲突处理、依赖同步与推送,最后回到原分支并输出汇总。

用法:支持可选参数指定起始与结束分支,默认从 master 到最高次版本分支,例如 /merge-cascade 或 /merge-cascade 9.0 9.2。执行前会先 git fetch origin,再 fetch 其他远程,最后再 fetch origin 一次,并把 master 硬重置到 origin/master。合并时对每个相邻分支对执行 git checkout 与 git merge --no-edit;冲突时用 git diff --name-only --diff-filter=U 列出文件,package.json、yarn.lock、版本文件保留目标分支版本,changelog/MDX 保留双方且目标分支条目在前,代码冲突可合并则合并、真正分歧则停止询问。解决后 git add -A 与 git commit --no-edit,随后运行 yarn install,若 yarn.lock 有变化则 git commit --amend --no-edit,再 git push 到目标远程。

适用场景:Mantine 这类多发布分支并行维护的仓库,需要把 master 的修复逐级带入各次版本分支时。

限制:需要干净工作区;依赖 yarn 与 git;推送失败、yarn install 失败或无法自动解决的冲突都会中止并需人工处理;分支命名需符合 X.Y 模式。其他细节暂未提供。