C---D =>b1
/
/ E---F =>b2
| /
A--B =======> master
| \
\ G---H =>b3
\
I---J =>b4
我想合并b1
, b2
, b3
,b4
成master
, 可以一次合并吗?
就像是:
git checkout master
git merge b1 b2 b3 b4
C---D =>b1
/
/ E---F =>b2
| /
A--B =======> master
| \
\ G---H =>b3
\
I---J =>b4
我想合并b1
, b2
, b3
,b4
成master
, 可以一次合并吗?
就像是:
git checkout master
git merge b1 b2 b3 b4
Git 的merge
命令支持多种合并策略。有两种策略可以一次合并两个以上的分支。
另请参阅此问题以获取对每个问题的不太正式的描述。
这解决了两个以上的情况,但拒绝进行需要手动解决的复杂合并。它主要用于将主题分支头捆绑在一起。这是拉取或合并多个分支时的默认合并策略。
最后一条语句暗示如果你这样做git merge branch1 branch2 ...
,它将使用章鱼策略。
这解决了任意数量的头,但合并的结果树始终是当前分支头的树,有效地忽略了所有其他分支的所有更改。它旨在用于取代分支的旧开发历史。
有关用例示例,请参阅此问题。
Git 有一个称为 octupus 的合并策略,它可以合并多个分支,只要没有复杂的冲突。执行此操作的命令完全按照您的建议git merge b1 b2
。