关于 merge
用于完成当前分支的技能:提交更改、变基到本地基准分支,再通过 workmux 合并。可选标志控制工作区清理和验证。
主要功能
- 01提交工作区中的所有更改
- 02变基到配置的本地基准分支
- 03通过 workmux 合并
- 04支持保留和跳过验证标志
适用场景
- 01完成已开发的功能分支
- 02合并时保留工作区
- 03按需跳过合并验证
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ raine/ workmux --skill merge安装后在 Claude Code 中输入/merge确认已加载。
详细介绍
参数: $ARGUMENTS
检查参数中的标志:
--keep、-k→ 将--keep传给workmux merge(合并后保留工作树和 tmux 窗口)--no-verify、-n→ 将--no-verify传给workmux merge
从参数中移除所有标志。
提交、变基并合并当前分支。
此命令通过以下步骤完成当前分支上的工作:
- 提交所有未提交的更改
- 变基到基分支上
- 运行
workmux merge进行合并和清理
步骤 1:提交
使用 git status --porcelain 检查已暂存、未暂存和未跟踪的更改。如果
存在更改,使用 git add -A 暂存所有更改,检查暂存的差异,
然后提交。如果工作树干净,则跳过。
步骤 2:变基
从 git 配置中获取基分支:
git config --local --get "branch.$(git branch --show-current).workmux-base"
如果未配置基分支,则默认使用 "main"。
变基到本地基分支(不要先从 origin 获取):
git rebase <base-branch>
重要:不要运行 git fetch。不要变基到 origin/<branch>。只变基到本地分支名称(例如,git rebase main,而不是 git rebase origin/main)。
如果发生冲突:
- 在解决任何冲突之前,先了解基分支中对每个 冲突文件所做的更改
- 对于每个冲突文件,运行
git log -p -n 3 <base-branch> -- <file>, 查看基分支中该文件的近期更改 - 目标是保留基分支和当前分支的 所有更改
- 解决每个冲突后,暂存该文件并使用
git rebase --continue继续 - 如果冲突过于复杂或不明确,请先寻求指导再继续
步骤 3:合并
运行:workmux merge --rebase --notification [--keep] [--no-verify]
只有在参数中传入 --keep 标志时才添加 --keep。
只有在参数中传入 --no-verify 标志时才添加 --no-verify。
这会将分支合并到基分支,并清理工作树和
tmux 窗口(除非使用 --keep)。
评论
支持 Markdown