From: Ben Peart <Ben.Peart@microsoft.com> To: "git@vger.kernel.org" <git@vger.kernel.org> Cc: Ben Peart <Ben.Peart@microsoft.com>, "newren@gmail.com" <newren@gmail.com>, "peff@peff.net" <peff@peff.net>, "gitster@pobox.com" <gitster@pobox.com>, "pclouds@gmail.com" <pclouds@gmail.com>, "vmiklos@frugalware.org" <vmiklos@frugalware.org>, Kevin Willford <kewillf@microsoft.com>, "Johannes.Schindelin@gmx.de" <Johannes.Schindelin@gmx.de>, "eckhard.s.maass@googlemail.com" <eckhard.s.maass@googlemail.com> Subject: [PATCH v2 1/2] merge: Add merge.renames config setting Date: Tue, 24 Apr 2018 17:11:41 +0000 [thread overview] Message-ID: <20180424171124.12064-2-benpeart@microsoft.com> (raw) In-Reply-To: <20180424171124.12064-1-benpeart@microsoft.com> Add the ability to control rename detection for merge via a config setting. Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Ben Peart <benpeart@microsoft.com> --- Documentation/diff-config.txt | 3 ++- Documentation/merge-config.txt | 8 +++++++- Documentation/merge-strategies.txt | 6 ++++-- builtin/merge.c | 1 + merge-recursive.c | 1 + 5 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Documentation/diff-config.txt b/Documentation/diff-config.txt index 5ca942ab5e..77caa66c2f 100644 --- a/Documentation/diff-config.txt +++ b/Documentation/diff-config.txt @@ -112,7 +112,8 @@ diff.orderFile:: diff.renameLimit:: The number of files to consider when performing the copy/rename - detection; equivalent to the 'git diff' option `-l`. + detection; equivalent to the 'git diff' option `-l`. This setting + has no effect if rename detection is turned off. diff.renames:: Whether and how Git detects renames. If set to "false", diff --git a/Documentation/merge-config.txt b/Documentation/merge-config.txt index 12b6bbf591..0540c44e23 100644 --- a/Documentation/merge-config.txt +++ b/Documentation/merge-config.txt @@ -35,7 +35,13 @@ include::fmt-merge-msg-config.txt[] merge.renameLimit:: The number of files to consider when performing rename detection during a merge; if not specified, defaults to the value of - diff.renameLimit. + diff.renameLimit. This setting has no effect if rename detection + is turned off. + +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. merge.renormalize:: Tell Git that canonical representation of files in the diff --git a/Documentation/merge-strategies.txt b/Documentation/merge-strategies.txt index 4a58aad4b8..1e0728aa12 100644 --- a/Documentation/merge-strategies.txt +++ b/Documentation/merge-strategies.txt @@ -84,12 +84,14 @@ no-renormalize;; `merge.renormalize` configuration variable. no-renames;; - Turn off rename detection. + Turn off rename detection. This overrides the `merge.renames` + configuration variable. See also linkgit:git-diff[1] `--no-renames`. find-renames[=<n>];; Turn on rename detection, optionally setting the similarity - threshold. This is the default. + threshold. This is the default. This overrides the + 'merge.renames' configuration variable. See also linkgit:git-diff[1] `--find-renames`. rename-threshold=<n>;; diff --git a/builtin/merge.c b/builtin/merge.c index 8746c5e3e8..3be52cd316 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -424,6 +424,7 @@ static void finish(struct commit *head_commit, opts.output_format |= DIFF_FORMAT_SUMMARY | DIFF_FORMAT_DIFFSTAT; opts.detect_rename = DIFF_DETECT_RENAME; + git_config_get_bool("merge.renames", &opts.detect_rename); diff_setup_done(&opts); diff_tree_oid(head, new_head, "", &opts); diffcore_std(&opts); 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); } -- 2.17.0.windows.1
next prev parent reply other threads:[~2018-04-24 17:11 UTC|newest] Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-04-20 13:36 [PATCH v1 0/2] add additional config settings for merge Ben Peart 2018-04-20 13:36 ` [PATCH v1 1/2] merge: Add merge.renames config setting Ben Peart 2018-04-20 17:02 ` Elijah Newren 2018-04-20 17:26 ` Elijah Newren 2018-04-23 12:57 ` Ben Peart 2018-04-20 17:59 ` Ben Peart 2018-04-20 18:34 ` Elijah Newren 2018-04-21 4:23 ` Junio C Hamano 2018-04-23 16:00 ` Ben Peart 2018-04-23 23:23 ` Junio C Hamano 2018-04-24 11:58 ` Johannes Schindelin 2018-04-24 17:47 ` Elijah Newren 2018-04-25 8:20 ` Johannes Schindelin 2018-04-22 12:07 ` Eckhard Maaß 2018-04-23 13:15 ` Ben Peart 2018-04-23 21:32 ` Eckhard Maaß 2018-04-24 16:53 ` Ben Peart 2018-04-23 13:22 ` Ben Peart 2018-04-20 13:36 ` [PATCH v1 2/2] merge: Add merge.aggressive " Ben Peart 2018-04-20 17:22 ` Elijah Newren 2018-04-24 16:45 ` Ben Peart 2018-04-24 17:36 ` Elijah Newren 2018-04-24 23:57 ` Junio C Hamano 2018-04-25 14:47 ` Ben Peart 2018-04-20 17:34 ` [PATCH v1 0/2] add additional config settings for merge Elijah Newren 2018-04-20 18:19 ` Ben Peart 2018-04-24 17:11 ` [PATCH v2 " Ben Peart 2018-04-24 17:11 ` Ben Peart [this message] 2018-04-24 18:11 ` [PATCH v2 1/2] merge: Add merge.renames config setting Elijah Newren 2018-04-24 18:59 ` Elijah Newren 2018-04-24 20:31 ` Ben Peart 2018-04-25 16:01 ` Elijah Newren 2018-04-24 17:11 ` [PATCH v2 2/2] merge: Add merge.aggressive " Ben Peart 2018-04-25 0:13 ` [PATCH v2 0/2] add additional config settings for merge Junio C Hamano 2018-04-25 15:22 ` Ben Peart 2018-04-26 1:48 ` Junio C Hamano 2018-04-26 20:52 ` [PATCH v3 0/3] add merge.renames config setting Ben Peart 2018-04-26 20:52 ` [PATCH v3 1/3] merge: update documentation for {merge,diff}.renameLimit Ben Peart 2018-04-26 23:11 ` Elijah Newren 2018-04-26 23:23 ` Jonathan Tan 2018-04-26 20:52 ` [PATCH v3 2/3] merge: Add merge.renames config setting Ben Peart 2018-04-26 22:52 ` Elijah Newren 2018-04-27 0:54 ` Ben Peart 2018-04-27 2:23 ` Junio C Hamano 2018-04-27 3:28 ` Elijah Newren 2018-04-27 7:23 ` Johannes Schindelin 2018-04-27 14:32 ` Elijah Newren 2018-04-27 18:37 ` Eckhard Maaß 2018-04-27 20:23 ` Elijah Newren 2018-04-30 8:03 ` Eckhard Maaß 2018-04-30 16:54 ` Elijah Newren 2018-04-27 4:17 ` Elijah Newren 2018-04-27 18:19 ` Elijah Newren 2018-04-30 13:11 ` Ben Peart 2018-04-30 16:12 ` Re: Elijah Newren 2018-05-02 14:33 ` Re: Ben Peart 2018-04-26 20:52 ` [PATCH v3 3/3] merge: pass aggressive when rename detection is turned off Ben Peart 2018-04-26 23:00 ` Elijah Newren 2018-04-26 22:08 ` [PATCH v3 0/3] add merge.renames config setting Elijah Newren 2018-05-02 16:01 ` [PATCH v4 0/3] add additional config settings for merge Ben Peart 2018-05-02 16:01 ` [PATCH v4 1/3] merge: update documentation for {merge,diff}.renameLimit Ben Peart 2018-05-02 16:01 ` [PATCH v4 2/3] merge: Add merge.renames config setting Ben Peart 2018-05-04 3:07 ` Junio C Hamano 2018-05-02 16:01 ` [PATCH v4 3/3] merge: pass aggressive when rename detection is turned off Ben Peart 2018-05-02 17:20 ` [PATCH v4 0/3] add additional config settings for merge Elijah Newren
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20180424171124.12064-2-benpeart@microsoft.com \ --to=ben.peart@microsoft.com \ --cc=Johannes.Schindelin@gmx.de \ --cc=eckhard.s.maass@googlemail.com \ --cc=git@vger.kernel.org \ --cc=gitster@pobox.com \ --cc=kewillf@microsoft.com \ --cc=newren@gmail.com \ --cc=pclouds@gmail.com \ --cc=peff@peff.net \ --cc=vmiklos@frugalware.org \ --subject='Re: [PATCH v2 1/2] merge: Add merge.renames config setting' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).