| name | merge |
| description | 将当前分支合并到目标分支(通常是 main)。
自动处理代码提交、创建 MR、监控 Pipeline、处理错误直到合并成功。
|
| user-invocable | true |
合并代码流程
将当前分支的代码通过 Merge Request 合并到目标分支。
使用流程
1. 确认状态
git status
git branch --show-current
2. 提交代码
如有未提交的更改,先提交:
git add .
git commit -m "feat/fix/refactor: 描述更改内容"
git push -u origin <current-branch>
3. 创建 Merge Request
使用 glab 创建 MR:
glab mr create --target-branch main --title "MR标题" --description "描述" --fill
glab mr create -f
记录返回的 MR 编号(如 !123)。
4. 监控 Pipeline
创建 MR 后,监控 Pipeline 执行状态:
glab ci status
glab mr view <mr-number>
5. 处理 Pipeline 失败
如果 Pipeline 失败:
glab ci status
glab ci view
git add .
git commit -m "fix: 修复 CI 错误"
git push
glab ci status
重复此过程直到 Pipeline 通过。
6. 合并 MR
Pipeline 通过后,合并 MR:
glab mr merge <mr-number> --squash
glab mr merge <mr-number>
7. 清理(可选)
合并成功后,清理本地分支和 worktree:
cd /path/to/AgentsMesh
git push origin --delete <branch-name>
git branch -d <branch-name>
git worktree remove ../AgentsMesh-Worktrees/<dir-name>
完整示例
用户说:"把当前分支合并到 main"
执行:
git status
git branch --show-current
git add .
git commit -m "feat: add user authentication"
git push -u origin feature/user-auth
glab mr create --target-branch main --fill
glab ci status --live
glab mr merge 42 --squash
cd /path/to/AgentsMesh
git worktree remove ../AgentsMesh-Worktrees/feature-user-auth
完成后输出
✅ MR !42 已成功合并到 main
合并详情:
- 分支: feature/user-auth → main
- Pipeline: passed
- 合并方式: squash
已清理:
- 远程分支: feature/user-auth (已删除)
- Worktree: ../AgentsMesh-Worktrees/feature-user-auth (已删除)
常用命令速查
| 操作 | 命令 |
|---|
| 查看 MR 列表 | glab mr list |
| 查看 MR 详情 | glab mr view <number> |
| 查看 Pipeline | glab ci status |
| 查看 CI 日志 | glab ci view |
| 合并 MR | glab mr merge <number> |
| 关闭 MR | glab mr close <number> |
注意事项
- 提交前确保代码已通过本地测试
- MR 标题应清晰描述更改内容
- Pipeline 失败时仔细阅读错误日志
- 合并前确认没有冲突
- 使用
--squash 可将多个 commit 合并为一个
- 合并后及时清理分支和 worktree