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

Re: [PATCH] merge-ort: make informational messages from recursive merges clearer

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 1, 2022, 06:44 UTC
Message-ID
<xmqqwnheuq79.fsf@gitster.g>
In-Reply-To
<xmqqsfsh5btd.fsf@gitster.g>
Junio C Hamano <gitster@pobox.com> writes:
Show 12 quoted lines
>> One other thing to note here, that I didn't notice until typing up this
>> commit message, is that merge-recursive does not print any messages from
>> the inner merges by default; the extra verbosity has to be requested.
>> merge-ort currently has no verbosity controls and always prints these.
>> We may also want to change that, but for now, just make the output
>> clearer with these extra markings and indentation.
>
> Yup, I found that the messages on inner conflicts, especially when
> they "cancel out" at the outer merge, are mostly noise that carries
> very little useful information (by being noisy, the user gets a sense
> of how complex the histories being merged are).  Reducing the default
> messaging level would probably be a good idea.

Here is what I just had to scroll through to update 'next' by merging back 'master', only to grab the updates to the release notes. Needless to say, this would have been somewhat baffling if I didn't know to expect it.

It would be good to squelch it before we hear another complaints from old-timer power users ;-)

$ git merge -m 'Sync with master' --no-log master
  From inner merge:  Auto-merging blame.c
  From inner merge:  Auto-merging builtin/am.c
  From inner merge:  Auto-merging builtin/blame.c
  From inner merge:  Auto-merging builtin/clone.c
  From inner merge:  Auto-merging builtin/clone.c
  From inner merge:  Auto-merging builtin/commit.c
  From inner merge:  Auto-merging builtin/fetch.c
  From inner merge:  Auto-merging builtin/fetch.c
  From inner merge:  Auto-merging builtin/grep.c
  From inner merge:  Auto-merging builtin/hash-object.c
  From inner merge:  Auto-merging builtin/log.c
  From inner merge:  Auto-merging builtin/log.c
  From inner merge:  Auto-merging builtin/pack-objects.c
  From inner merge:  Auto-merging builtin/pull.c
  From inner merge:  Auto-merging builtin/pull.c
  From inner merge:  Auto-merging builtin/rebase.c
  From inner merge:  Auto-merging builtin/rebase.c
  From inner merge:  Auto-merging builtin/reflog.c
  From inner merge:  CONFLICT (content): Merge conflict in builtin/reflog.c
Auto-merging builtin/reflog.c
  From inner merge:  Auto-merging builtin/reset.c
  From inner merge:  Auto-merging builtin/sparse-checkout.c
  From inner merge:  Auto-merging builtin/sparse-checkout.c
  From inner merge:  Auto-merging builtin/submodule--helper.c
  From inner merge:  Auto-merging builtin/submodule--helper.c
  From inner merge:  CONFLICT (content): Merge conflict in builtin/submodule--helper.c
Auto-merging builtin/submodule--helper.c
  From inner merge:  Auto-merging builtin/worktree.c
  From inner merge:  Auto-merging cache.h
  From inner merge:  Auto-merging config.c
  From inner merge:  Auto-merging config.h
  From inner merge:  Auto-merging diff-merges.c
  From inner merge:  Auto-merging diff.c
  From inner merge:  Auto-merging git.c
  From inner merge:  Auto-merging gpg-interface.c
  From inner merge:  Auto-merging grep.c
  From inner merge:  Auto-merging grep.c
  From inner merge:  Auto-merging notes-merge.c
  From inner merge:  Auto-merging object-name.c
  From inner merge:  Auto-merging pack-bitmap-write.c
  From inner merge:  Auto-merging parse-options.c
  From inner merge:  CONFLICT (content): Merge conflict in parse-options.c
  From inner merge:  Auto-merging parse-options.h
  From inner merge:  CONFLICT (content): Merge conflict in parse-options.h
  From inner merge:  Auto-merging refs.c
  From inner merge:  Auto-merging revision.c
  From inner merge:  Auto-merging sequencer.c
  From inner merge:  Auto-merging sequencer.c
  From inner merge:  Auto-merging sparse-index.c
  From inner merge:  Auto-merging submodule-config.c
  From inner merge:  Auto-merging t/t1091-sparse-checkout-builtin.sh
  From inner merge:  CONFLICT (content): Merge conflict in t/t1091-sparse-checkout-builtin.sh
Auto-merging t/t1091-sparse-checkout-builtin.sh
  From inner merge:  Auto-merging t/t1512-rev-parse-disambiguation.sh
  From inner merge:  Auto-merging t/t4202-log.sh
  From inner merge:  Auto-merging t/t4202-log.sh
  From inner merge:    Auto-merging t/t4202-log.sh
  From inner merge:  Auto-merging t/t4202-log.sh
  From inner merge:  Auto-merging t/t4202-log.sh
  From inner merge:  Auto-merging t/t5316-pack-delta-depth.sh
  From inner merge:  Auto-merging t/t6120-describe.sh
  From inner merge:    Auto-merging t/t6120-describe.sh
  From inner merge:  Auto-merging worktree.c
Merge made by the 'ort' strategy.
 Documentation/RelNotes/2.36.0.txt | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
Previous: Junio C HamanoNext: Elijah Newren
Message 3 of 6 in “merge-ort: make informational messages from recursive merges clearer”
  1. merge-ort: make informational messages from recursive merges clearerElijah Newren via GitGitGadget, Feb 17, 2022
  2. Junio C HamanoFeb 17, 2022
  3. Junio C HamanoMar 1, 2022
  4. Elijah NewrenMar 2, 2022
  5. Elijah NewrenMar 2, 2022
  6. Junio C HamanoMar 2, 2022

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.