如何使用Git Rebase让分支基于main分支以生成干净的合并请求?
用Git Rebase修正分支基准,生成干净的Merge Request
拉取main分支的最新代码:
git checkout main git pull origin main切换到你的工作分支(替换为实际分支名,比如
feature/your-task):git checkout feature/your-task执行rebase,将分支基准切换到main:
git rebase main若出现冲突,Git会暂停rebase流程。手动修改冲突文件中的冲突标记,解决后执行
git add <冲突文件名>,再用git rebase --continue继续rebase;若想放弃操作,执行git rebase --abort。强制推送更新远程分支(rebase修改了提交历史,需覆盖远程分支):
git push origin feature/your-task --force-with-lease优先使用
--force-with-lease而非--force,它会校验远程分支是否存在未同步的他人提交,避免误覆盖协作内容。回到Merge Request页面,此时MR的基准已自动更新为main分支,提交历史会呈现基于main的干净线性记录,不再包含原上游工作分支的多余提交。
内容的提问来源于stack exchange,提问作者ApocalypticLardon
相关产品推荐
相关产品推荐

