From: Felipe Contreras <felipe.contreras@gmail.com>
To: Junio C Hamano <gitster@pobox.com>, Seth House <seth@eseth.com>
Cc: Felipe Contreras <felipe.contreras@gmail.com>,
Johannes Sixt <j6t@kdbg.org>,
git@vger.kernel.org, David Aguilar <davvid@gmail.com>
Subject: Re: [RFC/PATCH] mergetool: use resolved conflicts in all the views
Date: Sat, 19 Dec 2020 06:08:05 -0600 [thread overview]
Message-ID: <5fdded2523e7e_1de0de208e1@natae.notmuch> (raw)
In-Reply-To: <xmqq1rfmqc8g.fsf@gitster.c.googlers.com>
Junio C Hamano wrote:
> Seth House <seth@eseth.com> writes:
>
> > I think where we're not seeing eye-to-eye is that you're focusing on
> > potential "negative" consequences whereas I'm talking about having more
> > information about the merge rather than less.
> >
> > There is very likely no negative consequences for most, if not all,
> > mergetools. I wrote the initial version of diffconflicts ten years ago
> > and I've been using it nearly every day since. I'm fairly confident in
> > the end result. What is a fact is there is undisputedly less information
> > about the merge if we overwrite LOCAL and REMOTE; as I've written,
> > I think the tradeoff is worthwhile for most tools but a per-tool
> > configuration will allow people that feel differently to choose
> > differently.
>
> Thanks for stressing this point.
>
> When a user or developer asks for a reasonable feature (e.g.
> configurability to suit personal taste), especially when there is no
> obvious downside for adding it, the burden of proof is on the party
> who refuses to add it
Sorry, but no.
You may be the final word in the git project, but the burden of proof is
an essential part of logic, not project-dependent, and that's just not
the case.
*Anyone* that makes any claim has the burden of proof.
That is enshrined in the latin maxim:
Semper necessitas probandi incumbit ei qui agit.
The necessity of proof always lies with the person who lays charges.
There is a reason why in the US justice system defendants are declared
"not guilty", and not "inocent".
I have written extensively about the subject, for example: First
principles of logic [1].
If a woman is not wearing a wedding ring, the person that claims she is
married has the burden of proof, but also the person that claims she is
single. *Both* have the burden of proof. It's only the person that says
"we don't know" that doesn't.
Is the feature reasonable? If I claim that it's not reasonable, I have
he burden of proof, but if you claim that it is reasonable, so do you.
That's just a fact of logic.
> ---they are the ones who have to adequately explain why adding it is
> actively harmful, not just the proposed addition is not necessary
> [*1*].
No. Both have the burden of proof.
Only the people in the default position (we don't know if the feature is
reasonable or not) don't require burden of proof.
> There is no need for any "evidence" of "negative consequence" at all
> to ask for a way to selectively enable or disable a new feature.
Yes there is. Not to ask for a feature, but *demand* a feature.
But such burden has been met, which is why users can turn off
mergetool.autoMerge, so they can already selectively disable the new
feature.
> A new feature tends to trigger unexpected bugs in unseen corner cases
> more than an older feature, even without any concrete numbers, and
> that is good enough reason to insist an escape hatch that is easy to
> access by users to exist.
That rationale is meeting its burden of proof.
But users do already have an escape hatch: "mergetool.automerge=false".
On the other hand the burden of proof for the claim that some tools
might want to disable this flag and not other tools has not been met.
Moreover, ignoring arguments doesn't magically make the burden of proof
from your side dissappear.
Is there a conflict in this example?
echo Hello > BASE
echo Hello > LOCAL
echo Hello. > REMOTE
git merge-file -p LOCAL BASE REMOTE
Cheers.
[1] https://felipec.substack.com/p/first-principles-of-logic
--
Felipe Contreras
next prev parent reply other threads:[~2020-12-19 12:09 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
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 [this message]
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=5fdded2523e7e_1de0de208e1@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).