如何将Git分支迁移至其他基础分支并合并对应代码?
解决方案
你提到的“将分支设置为Secondary的子分支”表述准确,核心是让你的MyBranch提交基于Secondary的代码,而非最初的master。用rebase是非常合适的选择——因为你的分支尚未推送,不会影响其他协作人员,能得到更干净的线性提交历史。
具体操作步骤
- 先确保本地
Secondary分支是最新版本:git checkout Secondary git pull # 如果远程Secondary有更新的话执行这步 - 切换回你的
MyBranch,执行变基操作:git checkout MyBranch git rebase Secondary - 如果遇到冲突:
- 打开冲突文件,手动解决代码冲突
- 标记冲突已解决:
git add <冲突文件名> - 继续变基流程:
git rebase --continue
重复上述步骤直到变基完成。
补充说明
如果你不想修改提交历史(比如担心变基操作的复杂度),也可以用merge命令将Secondary合并到MyBranch:
git checkout MyBranch git merge Secondary
这种方式会生成一个新的合并提交,提交历史会保留分叉。但因为你的分支未推送,优先推荐rebase,它能让你的提交历史更整洁,后续合并到Secondary时也更顺畅。
内容的提问来源于stack exchange,提问作者dargaud
相关产品推荐
相关产品推荐

