From: Ben Peart <peartben@gmail.com>
To: Junio C Hamano <gitster@pobox.com>, Elijah Newren <newren@gmail.com>
Cc: Ben Peart <Ben.Peart@microsoft.com>,
"git@vger.kernel.org" <git@vger.kernel.org>,
"peff@peff.net" <peff@peff.net>,
"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>
Subject: Re: [PATCH v1 1/2] merge: Add merge.renames config setting
Date: Mon, 23 Apr 2018 12:00:49 -0400 [thread overview]
Message-ID: <1fb11850-4c20-5327-a63a-6d1f5aa18ea4@gmail.com> (raw)
In-Reply-To: <xmqqwox19ohw.fsf@gitster-ct.c.googlers.com>
On 4/21/2018 12:23 AM, Junio C Hamano wrote:
> Elijah Newren <newren@gmail.com> writes:
>
>>>>> +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.
>> ...
>> Sorry, I think I wasn't being clear. The documentation for the config
>> options for e.g. diff.renameLimit, fetch.prune, log.abbrevCommit, and
>> merge.ff all mention the equivalent command line parameters. Your
>> patch doesn't do that for merge.renames, but I think it would be
>> helpful if it did.
>
> Yes, and if we are adding a new configuration, we should do so in
> such a way that we do not have to come back and extend it when we
> know what the command line option does and the configuration being
> proposed is less capable already.
Between all the different command line options, config settings, merge
strategies and the interactions between the diff and merge versions, I
was trying to keep things as simple and consistent as possible. To that
end 'merge.renames' was modeled after the existing 'diff.renames.'
I wonder if we can just add a
> single configuration whose value can be "never" to pretend as if
> "--Xno-renames" were given, and some similarity score like "50" to
> pretend as if "--Xfind-renames=50" were given.
>
> That is, merge.renames does not have to a simple "yes-no to control
> the --Xno-renames option". And it would of course be better to
> document it.
>
With the existing differences in how these options are passed on the
command line, I'm hesitant to add yet another pattern in the config
settings that combines 'renames' and '--find-renames[=<n>]'.
I _have_ wondered why this all isn't configured via find-renames with
find-renames=0 meaning renames=false (instead of mapping 0 to 32K). I
think that could have eliminated the need for splitting rename across
two different settings (which is what I think you are proposing above).
I'd then want the config setting and command line option to be the same
syntax and behavior.
Moving the existing settings to this model and updating the config and
command line options to be consistent without breaking backwards
compatibility is outside the intended scope of this patch.
> I also had to wonder how "merge -s resolve" faired, if the project
> is not interested in renamed paths at all.
>
To be clear, it isn't that we're not interested in detecting renamed
files and paths. We're just opposed to it taking an hour to figure that
out!
> Thanks.
>
next prev parent reply other threads:[~2018-04-23 16:00 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 [this message]
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 ` [PATCH v2 1/2] merge: Add merge.renames config setting Ben Peart
2018-04-24 18:11 ` 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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1fb11850-4c20-5327-a63a-6d1f5aa18ea4@gmail.com \
--to=peartben@gmail.com \
--cc=Ben.Peart@microsoft.com \
--cc=Johannes.Schindelin@gmx.de \
--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 \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).