sequencer: warn when internal merge may be suboptimal due to renameLimit
authorElijah Newren <newren@gmail.com>
Mon, 13 Nov 2017 20:15:57 +0000 (12:15 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 14 Nov 2017 02:37:24 +0000 (11:37 +0900)
When many files were renamed, the recursive merge strategy stopped
detecting renames and left many paths with delete/modify conflicts,
without any warning about what was going on or providing any hints about
how to tell Git to spend more cycles to detect renames.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sequencer.c
index 6d027b06c8d8dc69b14d05752637a65aa121ab24..1aa769c82d503d4bca56859d29a1d003282868a5 100644 (file)
@@ -462,6 +462,7 @@ static int do_recursive_merge(struct commit *base, struct commit *next,
        if (is_rebase_i(opts) && clean <= 0)
                fputs(o.obuf.buf, stdout);
        strbuf_release(&o.obuf);
+       diff_warn_rename_limit("merge.renamelimit", o.needed_rename_limit, 0);
        if (clean < 0)
                return clean;