git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] xdiff/xpatience: support anchoring line(s)

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 23, 2017, 02:16 UTC
Message-ID
<xmqq3755sprp.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<xmqqa7zdsqb6.fsf@gitster.mtv.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 7 quoted lines
> Jonathan Tan <jonathantanmy@google.com> writes:
>
>> One thing that might help is to warn if --anchor is used without
>> --patience, but I couldn't find a good place to put that warning. Let me
>> know if you know of a good place.
>
> How about dropping --anchor option and do it as "--patience=<pattern>"?

Well, that may not be an optimal suggestion, as it is always a pain to have to deal with an option with optional argument.

I understand that the case you would really want to warn against is
    git diff --histogram --anchor=foo
and not
    git diff --anchor=foo

as it is sensible to turn --patience on implicitly. Perhaps a good starting point might be to rename the option to include "patience" somewhere in its name ("--patience-anchor=<pattern>"?) to make it more obvious that it is about helping the patience algorithm. And then make "--patience-anchor=<pattern>" without any other algorithm selection option to behave as if "--patience" was also given.

What do we do when
    git diff --histogram --patience

is given? Do we warn? If we don't, perhaps it may not be too bad if

    git diff --histogram --patience-anchor=foo
    git diff --patience-anchor=foo --histogram

did not get any warning. Instead we just implicitly turn any occurence of --patience-anchor=foo into --patience followed by the same option, and assume that the user wanted the usual "last one wins" semantics. It would turn patience on for the former, and ignore the anchor for the latter and use historgram.

Previous: Junio C HamanoNext: Junio C Hamano
Message 7 of 15 in “xdiff/xpatience: support anchoring a line”
  1. xdiff/xpatience: support anchoring a lineJonathan Tan, Nov 21, 2017
  2. Stefan BellerNov 21, 2017
  3. Junio C HamanoNov 22, 2017
  4. xdiff/xpatience: support anchoring line(s)Jonathan Tan, Nov 22, 2017
  5. Stefan BellerNov 23, 2017
  6. Junio C HamanoNov 23, 2017
  7. Junio C HamanoNov 23, 2017
  8. Junio C HamanoNov 23, 2017
  9. Jonathan TanNov 27, 2017
  10. diff: support anchoring line(s)Jonathan Tan, Nov 27, 2017
  11. Junio C HamanoNov 28, 2017
  12. diff: support anchoring line(s)Jonathan Tan, Nov 28, 2017
  13. Johannes SchindelinNov 30, 2017
  14. Jonathan TanNov 30, 2017
  15. Stefan BellerDec 4, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.