chiark / gitweb /
git-debrebase: merge: Detect octopi later
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 11 Aug 2018 08:59:31 +0000 (09:59 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 11 Aug 2018 09:31:17 +0000 (10:31 +0100)
If git-debrebase or dgit were to make an octopus merge, we should
recognise that as an unknown kind of gdr/dgit merge, not as a general
octopus merge.  This code motion leaves a spot where such a new kind
of merge could be classified.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
git-debrebase

index 6c1f5d1..b015e88 100755 (executable)
@@ -772,9 +772,6 @@ sub classify ($) {
                           OrigParents => \@orig_ps);
     }
 
                           OrigParents => \@orig_ps);
     }
 
-    if (@p > 2) {
-       return $unknown->("octopus merge");
-    }
     if (@p == 2 and
        $r->{Msg} =~ m{^\[git-debrebase merged-breakwater.*\]$}m) {
        # xxx ^ metadata tag needs adding to (5)
     if (@p == 2 and
        $r->{Msg} =~ m{^\[git-debrebase merged-breakwater.*\]$}m) {
        # xxx ^ metadata tag needs adding to (5)
@@ -783,6 +780,9 @@ sub classify ($) {
     if ($r->{Msg} =~ m{^\[(git-debrebase|dgit)[: ].*\]$}m) {
        return $unknown->("unknown kind of merge from $1");
     }
     if ($r->{Msg} =~ m{^\[(git-debrebase|dgit)[: ].*\]$}m) {
        return $unknown->("unknown kind of merge from $1");
     }
+    if (@p > 2) {
+       return $unknown->("octopus merge");
+    }
 
     if (!$ENV{GIT_DEBREBASE_EXPERIMENTAL_MERGE}) {
        return $unknown->("general two-parent merge");
 
     if (!$ENV{GIT_DEBREBASE_EXPERIMENTAL_MERGE}) {
        return $unknown->("general two-parent merge");