merge-recursive: give notice when submodule commit gets fast-forwarded
authorLeif Middelschulte <Leif.Middelschulte@gmail.com>
Thu, 17 May 2018 18:40:08 +0000 (11:40 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 17 May 2018 22:59:13 +0000 (07:59 +0900)
Inform the user about an automatically fast-forwarded submodule. The
silent merge behavior was introduced by commit 68d03e4a6e44 ("Implement
automatic fast-forward merge for submodules", 2010-07-07)).

Signed-off-by: Leif Middelschulte <Leif.Middelschulte@gmail.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
merge-recursive.c

index 0571919..a9aeccc 100644 (file)
@@ -1093,10 +1093,26 @@ static int merge_submodule(struct merge_options *o,
        /* Case #1: a is contained in b or vice versa */
        if (in_merge_bases(commit_a, commit_b)) {
                oidcpy(result, b);
+               if (show(o, 3)) {
+                       output(o, 3, _("Fast-forwarding submodule %s to the following commit:"), path);
+                       output_commit_title(o, commit_b);
+               } else if (show(o, 2))
+                       output(o, 2, _("Fast-forwarding submodule %s to %s"), path, oid_to_hex(b));
+               else
+                       ; /* no output */
+
                return 1;
        }
        if (in_merge_bases(commit_b, commit_a)) {
                oidcpy(result, a);
+               if (show(o, 3)) {
+                       output(o, 3, _("Fast-forwarding submodule %s to the following commit:"), path);
+                       output_commit_title(o, commit_a);
+               } else if (show(o, 2))
+                       output(o, 2, _("Fast-forwarding submodule %s to %s"), path, oid_to_hex(a));
+               else
+                       ; /* no output */
+
                return 1;
        }