master分支有变更时,feature分支的最佳工作流程
同步master分支变更到feature分支的两种常用工作流程
根据你在feature分支开发时master有新变更的场景,推荐两种靠谱的同步方式,按需选择:
一、变基(Rebase):追求干净的线性提交历史
适合仅你自己使用feature分支、未推送到远程或推送后无他人协作的场景,能让你的提交历史保持线性,避免多余的合并节点。
操作步骤:
- 切到master分支拉取最新代码:
git checkout master git pull origin master - 切回你的feature分支:
git checkout feature/your-task-branch - 执行变基,将master的最新变更同步到当前分支:
git rebase master - 若遇到冲突:
- 打开冲突文件手动解决代码冲突
- 标记冲突已解决:
git add . - 继续变基流程:
git rebase --continue - 若中途想放弃变基,执行:
git rebase --abort
注意:如果feature分支已经推送到远程且有其他同事协作,绝对不要用变基——它会改写提交历史,导致团队成员的本地分支与远程出现不一致。
二、合并(Merge):兼容多人协作的安全方案
适合feature分支已推送到远程、多人协作开发的场景,不会改写历史,操作更稳妥。
操作步骤:
- 切到master分支拉取最新代码:
git checkout master git pull origin master - 切回你的feature分支:
git checkout feature/your-task-branch - 执行合并,将master的最新变更合并到当前分支:
git merge master - 若遇到冲突:
- 手动解决冲突文件
- 标记冲突已解决:
git add . - 提交合并结果:
git commit(Git会自动生成合并提交信息,你也可以自定义)
- 最后将同步后的分支推送到远程:
git push origin feature/your-task-branch
通用注意事项
不管用哪种方式,同步完成后一定要在本地运行测试用例,确保合并/变基后的代码功能正常,再准备提交PR,避免把潜在问题带到代码评审环节。
内容的提问来源于stack exchange,提问作者Sahaaj Singh Chawla
相关产品推荐
相关产品推荐

