Re: [PATCH 08/12] merge-ort: provide a merge_get_conflicted_files() helper function
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 4, 2022, 23:10 UTC
- Message-ID
- <nycvar.QRO.7.76.6.2202050009220.347@tvgsbejvaqbjf.bet>
- In-Reply-To
- <CABPp-BERtRDeyF3MhOQhAFwjoykOKwXoz6635NK7j2SEKp1b3A@mail.gmail.com>
Hi Elijah,
On Sat, 29 Jan 2022, Elijah Newren wrote:
Show 26 quoted lines
> On Sat, Jan 29, 2022 at 12:23 AM Johannes Sixt <j6t@kdbg.org> wrote: > > > > Just a heckling from the peanut gallery... > > > > Am 29.01.22 um 07:08 schrieb Elijah Newren: > > > On Fri, Jan 28, 2022 at 8:55 AM Johannes Schindelin > > > <Johannes.Schindelin@gmx.de> wrote: > > >> Meaning: Even if stage 3 is missing from the first conflict and stage 1 is > > >> missing from the second conflict, in the output we would see stages 1, 2, > > >> 2, 3, i.e. a duplicate stage 2, signifying that we're talking about two > > >> different conflicts. > > > > > > I don't understand why you're fixating on the stage here. Why would > > > you want to group all the stage 2s together, count them up, and then > > > determine there are N conflicting files because there are N stage 2's? > > > > Looks like you are misunderstanding Dscho's point: When you have two > > conflicts, the first with stages 1 and 2, the second with stages 2 and > > 3, then the 2s occur lumped together when the 4 lines are printed in a > > row, and that is the cue to the parser where the new conflict begins. > > Dscho did not mean that all N 2s of should be listed together. > > Ah, so...I didn't understand his misunderstanding? Using stages as a > cue to the parser where the new conflict begins is broken; you should > instead check for when the filename listed on a line does not match > the filename on the previous line.
But that would break down in case of rename/rename conflicts, right?
> In particular, if one conflict has stages 1 and 2, and the next conflict > has only stage 3, then looking at stages only might cause you to > accidentally lump unrelated conflicts together.
Precisely. That's why I would love to have a way to deviate from the output of `ls-files -u`'s format, and have a reliable way to indicate stages that belong to the same merge conflict.
Thanks, Dscho