用途:将当前开发分支的提交以 rebase 方式同步到 main 分支,推送远端,再切回原分支。
主要能力与流程:
- 记录当前分支名:git branch --show-current,保存结果用于后续切回;若当前已在 main 分支,提示用户并终止。
- 确认工作树干净:git status;若存在未提交变更,提示用户先处理(提交或暂存),不继续。
- 切换到 main:git checkout main。
- 将原分支提交 rebase 到 main:git rebase <原分支名>;若出现冲突,停止并告知用户需手动解决。
- 推送 main 到远端:git push origin main,使用普通 push,不使用 --force;若 push 失败,告知用户原因。
- 切回原分支:git checkout <原分支名>。
适用场景:用户提及「同步到 main」「rebase 到 main」「更新 main」「推送到主分支」「把 dev 合到 main」等关键词时使用。
限制与注意事项:不使用 --force 推送,保证远端历史安全;rebase 过程中出现冲突立即停止并告知用户;执行前必须确认工作树干净(无未提交变更)。其他细节暂未提供。