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

Re: What's cooking in git.git (Aug 2018, #06; Wed, 29)

From
Elijah Newren <newren@gmail.com>
Date
Aug 30, 2018, 16:11 UTC
Message-ID
<CABPp-BE43kFwRZ90-EWB9Em6xk-T=QfNXCepY=0O5OYYZe-qAg@mail.gmail.com>
In-Reply-To
<xmqqzhx36er2.fsf@gitster-ct.c.googlers.com>
On Thu, Aug 30, 2018 at 8:44 AM Junio C Hamano <gitster@pobox.com> wrote:
Show 10 quoted lines
>
> Elijah Newren <newren@gmail.com> writes:
>
> >>  Recent addition of "directory rename" heuristics to the
> >>  merge-recursive backend makes the command susceptible to false
> >>  positives and false negatives, but the risk is even more grave when
> >>  used in the context of "git am -3", which does not know about any
> >>  surrounding unmodified paths while inspecting a patch.  The
> >>  heuristic is disabled to keep the machinery "more stupid but
> >>  predicable".
...
Show 24 quoted lines
> > - Do we really want to say "even more" here?  I'd rather we left those
> > two words off or found another rewording.  Obviously, I'm biased, but
> > there's more than just my own opinion of and vested interest in the
> > directory rename detection feature.  I'm afraid users may interpret
> > this sentence as saying the git project feels we've shipped a
> > generally bad/unsafe feature, but are only taking corrective action in
> > the most egregious of cases.  That seems to me like a scary message to
> > send.  Maybe I'm just mis-reading what you meant, but I wanted to at
> > least check what you meant here and, if that meaning was not
> > intentional, ask whether we could improve the wording.
>
> I am biased towards "keep it stupid and simple and predictable"
> camp, and want to make sure that users do not to blindly trust
> overly-clever behaviour of the tool.  As heuristics can always make
> mistakes either way, I felt that not saying "more" would be sending
> the opposite message---"in normal cases, dir-rename code will notice
> presence or absense of whole-directory renames without mistakes but
> when used in 'am -3' it misbehaves".
>
> But it was not my intention to say "it is generally bad/unsafe".  I
> just wanted to make sure that the users would understand it is "not
> fool-proof and can make mistakes".
>
> Suggestions for a better rewrite is very much appreciated.

That makes sense. I'm not sure I can concisely convey all the right points, but here's a stab at rewording:

Recent addition of "directory rename" heuristics to the merge-recursive backend makes the command susceptible to false positives and false negatives. In the context of "git am -3", which does not know about surrounding unmodified paths and thus cannot inform the merge machinery about the full trees involved, this risk is particularly severe. As such, the heuristic is disabled for "git am -3" to keep the machinery "more stupid but predictable".

Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 8 in “What's cooking in git.git (Aug 2018, #06; Wed, 29)”
  1. Junio C HamanoAug 29, 2018
  2. Elijah NewrenAug 30, 2018
  3. Junio C HamanoAug 30, 2018
  4. Elijah NewrenAug 30, 2018
  5. Junio C HamanoAug 31, 2018
  6. Kaartic SivaraamSep 1, 2018
  7. es/format-patch-{inter,range}diff, was Re: What's cooking in git.git (Aug 2018, #06; Wed, 29)Johannes Schindelin, Aug 30, 2018
  8. Stephen & Linda SmithSep 3, 2018

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.