]> git.ipfire.org Git - thirdparty/git.git/commit - sequencer.c
rebase --rebase-merges: add support for octopus merges
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Thu, 21 Dec 2017 14:52:45 +0000 (15:52 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 11 Jul 2018 21:52:30 +0000 (14:52 -0700)
commit2b6ad0f4bca508a04e2b6e940e37f7d98c1a8696
tree2d40db405cbea7e9b58864db8fb6fbadcb9aa0eb
parent920f22e6bc2ddc28b1d70eb8167fe17f0f1601eb
rebase --rebase-merges: add support for octopus merges

Previously, we introduced the `merge` command for use in todo lists,
to allow to recreate and modify branch topology.

For ease of implementation, and to make review easier, the initial
implementation only supported merge commits with exactly two parents.

This patch adds support for octopus merges, making use of the
just-introduced `-F <file>` option for the `git merge` command: to keep
things simple, we spawn a new Git command instead of trying to call a
library function, also opening an easier door to enhance `rebase
--rebase-merges` to optionally use a merge strategy different from
`recursive` for regular merges: this feature would use the same code
path as octopus merges and simply spawn a `git merge`.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sequencer.c
t/t3430-rebase-merges.sh