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

Re: [PATCH v2] merge-options.txt: clarify meaning of various ff-related options

From
Sergey Organov <sorganov@gmail.com>
Date
Aug 29, 2019, 09:15 UTC
Message-ID
<874l20nxic.fsf@osv.gnss.ru>
In-Reply-To
<CABPp-BEsRL-JipotZ2FyrXiPcry6aSAvL8e5cbOm5jrPM63j-g@mail.gmail.com>
Elijah Newren <newren@gmail.com> writes:
Show 64 quoted lines
> On Wed, Aug 28, 2019 at 12:15 PM Sergey Organov <sorganov@gmail.com> wrote:
>>
>> Hi,
>>
> [...]
>> Dunno if it helps, but here is what I came up with somewhere in previous
>> discussions:
>>
>> --ff::
>> --no-ff::
>> --ff-only::
>>         When the merge resolves as a fast-forward, only update the
>
> I think this loose wording (that you just took from the original) is
> problematic.  Saying that a "merge resolves as a fast-forward" seems
> to imply that there are circumstances when a fast-forward is the only
> option.  An _individual_ can decide to resolve a merge as a
> fast-forward in some circumstances, but it's certainly not the only
> choice in any circumstance.  If you want to keep this wording short,
> you could replace "resolves" with "can be resolved".
>
>>         branch pointer (without creating a merge commit).  When a fast
>
> Only update the branch pointer to what?  (Yes, I know the original
> text we were improving left this unclear, but it's worth noting.)
>
>>         forward update is not possible, create a merge commit.  This is
>>         the default behavior, unless merging an annotated (and possibly
>>         signed) tag that is not stored in its natural place in
>>         'refs/tags/' hierarchy, in which case --no-ff is assumed.
>
> Maybe it's just me, but I think it takes extra human cycles to figure
> out that this paragraph is referring just to the --ff case, and that
> users might not be able to do so until after reading the next 2-3
> sentences.  While more brief, I think it will cause people to need to
> read the description for these three options twice, removing most the
> savings from being shorter.  It'd be better if it could be re-worded
> to not need re-reads.
>
>> +
>> With --no-ff create a merge commit even when the merge could instead
>> resolve as a fast-forward.
>> +
>> With --ff-only resolve the merge as a fast-forward (never create a merge
>> commit). When fast-forward is not possible, refuse to merge and exit
>> with non-zero status.
>
> Something else I was trying to address with my patch that perhaps you
> can see a different way to tackle: Using the wording "when possible"
> is probably going to make users wonder when a fast forward is
> possible; the "can be resolved" wording tweak also makes it more
> likely they will wonder about this.  Another question they will be
> wondering about is what a fast forward is (which you partially
> explain).  Some basic knowledge of both are probably very useful in
> helping them decide which option to actually pick.  As such, I think
> trying to explain the answers to these sub-questions will assist them
> in knowing which option to use.  Simply inserting a couple phrases
> (e.g. "when the merged branch contains the current branch in its
> history", and "only update the branch pointer *to match the merged
> branch* and do not create a merge commit") may help a lot.
>
> Anyway, I'll send a v3 addressing Martin's comments; if you've got
> further suggestions for streamlining or rearranging, though, please do
> send them along.
Thanks for thorough reply!

My version was meant to show how to re-arrange the description preserving original wording as much as possible, so your version should be better, as it addresses other problems as well.

-- 
Sergey
Previous: Elijah NewrenNext: Elijah Newren
Message 9 of 16 in “merge-options.txt: clarify meaning of various ff-related options”
  1. merge-options.txt: clarify meaning of various ff-related optionsElijah Newren, Aug 28, 2019
  2. Sergey OrganovAug 28, 2019
  3. merge-options.txt: clarify meaning of various ff-related optionsElijah Newren, Aug 28, 2019
  4. Martin ÅgrenAug 28, 2019
  5. Sergey OrganovAug 28, 2019
  6. Martin ÅgrenAug 28, 2019
  7. Sergey OrganovAug 29, 2019
  8. Elijah NewrenAug 28, 2019
  9. Sergey OrganovAug 29, 2019
  10. merge-options.txt: clarify meaning of various ff-related optionsElijah Newren, Aug 28, 2019
  11. Junio C HamanoAug 30, 2019
  12. Eric SunshineAug 30, 2019
  13. merge-options.txt: clarify meaning of various ff-related optionsElijah Newren, Aug 31, 2019
  14. Junio C HamanoAug 30, 2019
  15. Elijah NewrenAug 30, 2019
  16. Junio C HamanoAug 30, 2019

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.