From: Felipe Contreras <felipe.contreras@gmail.com>
To: Johannes Sixt <j6t@kdbg.org>,
Felipe Contreras <felipe.contreras@gmail.com>,
Seth House <seth@eseth.com>, Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org, David Aguilar <davvid@gmail.com>
Subject: Re: [RFC/PATCH] mergetool: use resolved conflicts in all the views
Date: Thu, 17 Dec 2020 02:27:51 -0600 [thread overview]
Message-ID: <5fdb1687825e9_d35b620855@natae.notmuch> (raw)
In-Reply-To: <e5c73fed-b87e-2091-794e-19aced4dd25b@kdbg.org>
Johannes Sixt wrote:
> Am 17.12.20 um 06:41 schrieb Felipe Contreras:
> > Seth House wrote:
> >> I appreciate Felipe getting the discussion started.
> >>
> >> On Wed, Dec 16, 2020 at 02:24:23PM -0800, Junio C Hamano wrote:
> >>> If there is none, then what is the benefit of doing the same thing
> >>> without running 3 checkout-index?
> >>
> >> I wasn't aware of this plubming when I wrote the initial shell-script
> >> version of the technique. This is a much better approach (even *if*
> >> there's a negligible performance penalty). This nicely avoids
> >> UNIX/Windows line-ending surprises, and instead leans on
> >> already-configured Git defaults for those. Plus the non-text files
> >> benefit you mentioned is also huge.
> >
> > I think you misunderstood.
> >
> > This command:
> >
> > git checkout-index --stage 2 --temp -- poem.txt
> >
> > Will give you *exactly* the same output as LOCAL.
> >
> > The context is "git mergetool", not the mergetool itself.
> >
> >>> as I understand "mergetool" is handed an
> >>> already conflicted state and asked to resolve it, it would not be
> >>> possible without at least looking at the stage #1 to recover the
> >>> base for folks who do not use diff3 style.
> >>
> >> I feel strongly that LOCAL, REMOTE, and BASE should be left intact for
> >> this reason, Also because they aid readers in understanding the
> >> pre-conflicts versions of the file.
> >>
> >> Rather mergetools (that support it) should be given the stage 1-3
> >> versions of the file in addition to the usual, unmodified, above three.
> >> Then each tool can decide whether or how to show each. Some graphical
> >> tools might be able to make effective use of all five (six?).
> >
> > Except as you stated in your blog post, not a *single* tool does this
> > correctly using LOCAL, REMOTE, and BASE.
> >
> > * Araxis: a mess of changes
> > * Beyond Compare: a mess of changes
> > * DiffMerge: a mess of changes
> > * kdiff3: a mess of changes
> > * Meld: a mess of changes
> > * Sublime Merge: displays unnecessary changes
> > * SmartGit: ignores the other files
> > * Fork: displays unnecessary changes
> > * P4Merge: displays unnecessary changes
> > * IntelliJ: a mess of changes
> > * Tortoise Merge: uncertain
> > * tkdiff: displays unnecessary changes
> > * vimdiff: so, so wrong
> > * vimdiff2: displays unnecessary changes
> > * diffconflicts: RIGHT!
> >
> > So all tools would benefit from the patch (except yours).
> >
> > Which tool would be negatively affected?
>
> Where's WinMerge in your list?
It's not my list; it's Seth's list.
> I'm mostly using WinMerge these days, and it can do what your patch
> does all by itself.
Really? Because under Wine it doesn't look like it:
1. Before: https://snipboard.io/8JA5Oz.jpg
2. After: https://snipboard.io/HUXnOg.jpg
> I don't know, though, whether your patch would have a negative effect
> for WinMerge.
Seems like it has a *positive* effect. Like in all mergetools.
Cheers.
--
Felipe Contreras
next prev parent reply other threads:[~2020-12-17 8:28 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-16 17:43 [RFC/PATCH] mergetool: use resolved conflicts in all the views Felipe Contreras
2020-12-16 22:24 ` Junio C Hamano
2020-12-16 22:53 ` Seth House
2020-12-17 5:18 ` Junio C Hamano
2020-12-17 5:41 ` Felipe Contreras
2020-12-17 7:35 ` Johannes Sixt
2020-12-17 8:27 ` Felipe Contreras [this message]
2020-12-17 19:23 ` Johannes Sixt
2020-12-18 2:30 ` Felipe Contreras
2020-12-17 9:44 ` Seth House
2020-12-17 10:35 ` Felipe Contreras
2020-12-17 17:50 ` Seth House
2020-12-17 19:28 ` Junio C Hamano
2020-12-18 2:34 ` Felipe Contreras
[not found] ` <CANiSa6jMXTyfo43bUdC8601BvYKiF67HXo+QaiTh_-8KWyBsLg@mail.gmail.com>
2020-12-21 0:31 ` Felipe Contreras
2020-12-18 2:05 ` Felipe Contreras
2020-12-18 2:35 ` Seth House
2020-12-18 2:49 ` Felipe Contreras
2020-12-18 5:49 ` Seth House
2020-12-18 9:46 ` Felipe Contreras
2020-12-19 0:13 ` Seth House
2020-12-19 0:53 ` Felipe Contreras
2020-12-19 11:14 ` Junio C Hamano
2020-12-19 12:08 ` Felipe Contreras
2020-12-19 18:26 ` Junio C Hamano
2020-12-19 20:18 ` Felipe Contreras
2020-12-21 4:25 ` Seth House
2020-12-21 5:34 ` Felipe Contreras
2020-12-21 7:36 ` Seth House
2020-12-21 11:17 ` Felipe Contreras
2020-12-21 22:15 ` David Aguilar
2020-12-21 23:51 ` Code of conduct violation? Felipe Contreras
2020-12-22 7:13 ` Junio C Hamano
2020-12-22 9:58 ` Felipe Contreras
2020-12-22 15:01 ` Pratyush Yadav
2020-12-23 4:23 ` Felipe Contreras
2020-12-23 5:02 ` Junio C Hamano
2020-12-23 5:41 ` Felipe Contreras
2020-12-23 15:04 ` Nobody is THE one making contribution Junio C Hamano
2020-12-23 15:51 ` Felipe Contreras
2020-12-23 20:56 ` Junio C Hamano
2020-12-24 1:09 ` Felipe Contreras
2020-12-24 2:01 ` Ævar Arnfjörð Bjarmason
2020-12-24 5:19 ` Felipe Contreras
2020-12-24 12:30 ` Ævar Arnfjörð Bjarmason
2020-12-24 15:26 ` Felipe Contreras
2020-12-24 22:57 ` Junio C Hamano
2020-12-27 17:29 ` Felipe Contreras
2020-12-27 18:30 ` Junio C Hamano
2020-12-27 18:47 ` Felipe Contreras
2020-12-28 10:39 ` Junio C Hamano
2020-12-28 14:27 ` Felipe Contreras
2020-12-24 15:09 ` Randall S. Becker
2020-12-24 15:37 ` Felipe Contreras
2020-12-24 22:40 ` Junio C Hamano
2020-12-24 21:00 ` Code of conduct violation? David Aguilar
2020-12-24 22:32 ` Felipe Contreras
2020-12-18 10:04 ` [RFC/PATCH] mergetool: use resolved conflicts in all the views Junio C Hamano
2020-12-18 11:58 ` Felipe Contreras
2020-12-19 18:52 ` Junio C Hamano
2020-12-19 20:59 ` Felipe Contreras
2020-12-20 6:44 ` David Aguilar
2020-12-20 7:53 ` Felipe Contreras
2020-12-20 22:22 ` David Aguilar
2020-12-21 1:46 ` Felipe Contreras
2020-12-19 0:18 ` Seth House
2020-12-16 23:41 ` Felipe Contreras
2020-12-17 5:19 ` Junio C Hamano
2020-12-17 5:43 ` Felipe Contreras
2020-12-17 2:35 ` [RFC/PATCH v2] " Felipe Contreras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5fdb1687825e9_d35b620855@natae.notmuch \
--to=felipe.contreras@gmail.com \
--cc=davvid@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j6t@kdbg.org \
--cc=seth@eseth.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).