On Fri, Apr 20, 2018 at 6:36 AM, Ben Peart <Ben.Peart@xxxxxxxxxxxxx> wrote: > --- a/Documentation/merge-config.txt > +++ b/Documentation/merge-config.txt > @@ -37,6 +37,11 @@ merge.renameLimit:: > during a merge; if not specified, defaults to the value of > diff.renameLimit. > > +merge.renames:: > + Whether and how Git detects renames. If set to "false", > + rename detection is disabled. If set to "true", basic rename > + detection is enabled. This is the default. One can already control o->detect_rename via the -Xno-renames and -Xfind-renames options. I think the documentation should mention that "false" is the same as passing -Xno-renames, and "true" is the same as passing -Xfind-renames. However, find-renames does take similarity threshold as a parameter, so there's a question whether this option should provide some way to do the same. I'm not sure the answer to that; it may be that we'd want a separate config option for that, and we can wait to add it until someone actually wants it. > merge.renormalize:: > Tell Git that canonical representation of files in the > repository has changed over time (e.g. earlier commits record > diff --git a/merge-recursive.c b/merge-recursive.c > index 9c05eb7f70..cd5367e890 100644 > --- a/merge-recursive.c > +++ b/merge-recursive.c > @@ -3256,6 +3256,7 @@ static void merge_recursive_config(struct merge_options *o) > git_config_get_int("merge.verbosity", &o->verbosity); > git_config_get_int("diff.renamelimit", &o->diff_rename_limit); > git_config_get_int("merge.renamelimit", &o->merge_rename_limit); > + git_config_get_bool("merge.renames", &o->detect_rename); > git_config(git_xmerge_config, NULL); > } I would expect an explicitly passed -Xno-renames or -Xfind-renames to override the config setting. Could you check if that's the case? Also, if someone sets merge.renameLimit (to anything) and sets merge.renames to false, then they've got a contradictory setup. Does it make sense to check and warn about that anywhere?