Elijah Newren <newren@xxxxxxxxx> writes: > @@ -1283,6 +1302,18 @@ static int merge_mode_and_contents(struct merge_options *o, > const char *branch2, > struct merge_file_info *result) > { > + if (o->branch1 != branch1) { > + /* > + * It's weird getting a reverse merge with HEAD on the bottom > + * side of the conflict markers and the other branch on the > + * top. Fix that. > + */ > + return merge_mode_and_contents(o, one, b, a, > + filename, > + branch2, branch1, > + extra_marker_size, result); > + } Will queue with the following squashed in. Thanks. merge-recursive.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/merge-recursive.c b/merge-recursive.c index 16980db7f9..73b5710386 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -1310,8 +1310,7 @@ static int merge_mode_and_contents(struct merge_options *o, */ return merge_mode_and_contents(o, one, b, a, filename, - branch2, branch1, - extra_marker_size, result); + branch2, branch1, result); } result->merge = 0;