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

Re: [PATCH] rebase docs: fix incorrect format of the section Behavioral Differences

From
Johannes Sixt <j6t@kdbg.org>
Date
Dec 5, 2018, 06:57 UTC
Message-ID
<76537e8b-3b66-e1f1-eb4d-e9e1c18012df@kdbg.org>
In-Reply-To
<CABPp-BG=4K9VCc8zuUm0KTRG5cHPijtvQTK4QXWRVbSFu3o_fQ@mail.gmail.com>
Am 05.12.18 um 07:20 schrieb Elijah Newren:
Show 60 quoted lines
> On Tue, Dec 4, 2018 at 7:54 PM Junio C Hamano <gitster@pobox.com> wrote:
>>
>> Elijah Newren <newren@gmail.com> writes:
>>
>>> Gah, when I was rebasing on your patch I adopted your sentence rewrite
>>> but forgot to remove the "sometimes".  Thanks for catching; correction:
>>
>>>
>>> -- 8< --
>>> Subject: [PATCH v2] git-rebase.txt: update note about directory rename
>>>   detection and am
>>>
>>> In commit 6aba117d5cf7 ("am: avoid directory rename detection when
>>> calling recursive merge machinery", 2018-08-29), the git-rebase manpage
>>> probably should have also been updated to note the stronger
>>> incompatibility between git-am and directory rename detection.  Update
>>> it now.
>>>
>>> Signed-off-by: Elijah Newren <newren@gmail.com>
>>> ---
>>>   Documentation/git-rebase.txt | 8 ++++++--
>>>   1 file changed, 6 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
>>> index 41631df6e4..ef76cccf3f 100644
>>> --- a/Documentation/git-rebase.txt
>>> +++ b/Documentation/git-rebase.txt
>>> @@ -569,8 +569,12 @@ it to keep commits that started empty.
>>>   Directory rename detection
>>>   ~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>
>>> -The merge and interactive backends work fine with
>>> -directory rename detection.  The am backend sometimes does not.
>>> +The merge and interactive backends work fine with directory rename
>>
>> I am not sure "work fine" a fair and correct label, as rename is
>> always heuristic.
>>
>>      The "directory rename detection" heuristic in "merge" and the
>>      "interactive" backends can take what happened to paths in the
>>      same directory into account when deciding if a disappeared path
>>      was "renamed" and to which other path.  The heuristic produces
>>      incorrect result when the information given is only about
>>      changed paths, which is why it is disabled when using the "am"
>>      backend.
>>
>> perhaps.
> 
> The general idea sounds good.  Does adding a few more details help
> with understanding, or is it more of an information overload?  I'm
> thinking of something like:
> 
>       The "directory rename detection" heuristic in the "merge" and
>       "interactive" backends can take what happened to paths in the
>       same directory on the other side of history into account when
>       deciding whether a new path in that directory should instead be
>       moved elsewhere.  The heuristic produces incorrect results when
>       the only information available is about files which were changed
>       on the side of history being rebased, which is why directory
>       rename detection is disabled when using the "am" backend.

Please let me deposit my objection. This paragraph is not the right place to explain what directory renme detection is and how it works under the hood. "works fine" in the original text is the right phrase here; if there is concern that this induces expectations that cannot be met, throw in the word "heuristics".

Such as:
    Directory rename heuristics work fine in the merge and interactive
    backends. It does not in the am backend because...
-- Hannes
Previous: Elijah NewrenNext: Junio C Hamano
Message 11 of 18 in “rebase docs: fix incorrect format of the section Behavioral Differences”
  1. rebase docs: fix incorrect format of the section Behavioral DifferencesJohannes Sixt, Dec 3, 2018
  2. Martin ÅgrenDec 3, 2018
  3. Johannes SixtDec 3, 2018
  4. Junio C HamanoDec 4, 2018
  5. Johannes SchindelinDec 3, 2018
  6. Elijah NewrenDec 4, 2018
  7. Johannes SixtDec 4, 2018
  8. Elijah NewrenDec 4, 2018
  9. Junio C HamanoDec 5, 2018
  10. Elijah NewrenDec 5, 2018
  11. Johannes SixtDec 5, 2018
  12. Junio C HamanoDec 5, 2018
  13. Elijah NewrenDec 5, 2018
  14. Johannes SixtDec 5, 2018
  15. Junio C HamanoDec 5, 2018
  16. git-rebase.txt: update note about directory rename detection and amJohannes Sixt, Dec 7, 2018
  17. Elijah NewrenDec 7, 2018
  18. Junio C HamanoDec 9, 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.