Git分支合并操作咨询:如何在如下分支结构中将branch 2的最新特性合并至branch 1?
实现分支结构整合,让b1拥有b2的最新特性
先帮你明确下当前和期望的分支状态:
当前分支结构
b0........ ...*...*... | | | | b1 b2 | | | b2.1
期望的分支结构
b1........ ...*...*....merge b1&(merge b2&b2.1) | | | | b2 -------merge b2&b2.1 | | | | |..........b2.1
你的核心需求很明确:让b1分支拥有b2分支的最新特性,也就是把b2和b2.1的合并结果整合到b1里。下面是具体的操作步骤:
- 先确保本地仓库的分支都同步了远程的最新状态(如果有远程仓库的话):
git fetch - 切换到b2分支,将b2.1合并进来,先完成b2内部的整合:
如果合并过程中出现冲突,手动解决冲突后,执行提交:git checkout b2 git merge b2.1git add . git commit -m "Merge branch 'b2.1' into b2" - 切换回b1分支,把已经整合了b2.1的b2分支合并进来:
同样,若有冲突解决后提交即可。git checkout b1 git merge b2 - 如果你希望保留b2的分支历史,不让合并记录被扁平化,可以使用
--no-ff参数(no fast-forward),这样会生成一个新的合并提交:git merge --no-ff b2 -m "Merge branch 'b2' into b1"
完成这些操作后,b1就会包含b2和b2.1的所有最新提交,分支结构也会和你期望的一致啦。
内容的提问来源于stack exchange,提问作者moab
相关产品推荐
相关产品推荐

