From: Junio C Hamano <gitster@pobox.com>
To: "brian m. carlson" <sandals@crustytoothpaste.net>
Cc: Martin von Zweigbergk via GitGitGadget <gitgitgadget@gmail.com>,
git@vger.kernel.org,
Martin von Zweigbergk <martinvonz@gmail.com>,
Martin von Zweigbergk <martinvonz@google.com>
Subject: Re: [PATCH] BreakingChanges: say that `git diff X..Y` syntax will be removed in 3.0
Date: Thu, 16 Oct 2025 06:44:51 -0700 [thread overview]
Message-ID: <xmqqh5vz7ygc.fsf@gitster.g> (raw)
In-Reply-To: <aPAgBPLH4QYa0ceP@fruit.crustytoothpaste.net> (brian m. carlson's message of "Wed, 15 Oct 2025 22:28:20 +0000")
"brian m. carlson" <sandals@crustytoothpaste.net> writes:
>> +Support for "git diff X..Y" syntax will be removed. Use "git diff X Y" instead.
>> +This will open up the syntax for a more consistent interpretation of
>> +"git diff $(git merge-base X Y) Y".
>
> I feel like this is going to break a whole lot of existing scripts and
> probably more than a few forges as well. It seems especially bad that
> we would add it back in the future with a completely different meaning,
> since we'll have some people that use 10-year LTS distros that go from,
> say, Git 2.51 to Git 3.xx, where the latter reintroduces the syntax with
> different semantics.
>
> We've never really changed the meaning of things like revisions or
> revision-adjacent code in the past and I think those kinds of things
> we're pretty much stuck with forever. With that in mind, I don't think
> this is a good idea.
I do not think X..Y (or X...Y), if accepted by commands, would never
change their meanings in the middle of the commands' lives.
Teaching "git diff" to complain and barf on X..Y is a possibility,
but to do the same for X...Y, we would need to come up with an
alternative syntax first.
The same for "git checkout master..." that detaches HEAD at the
fork point of the current topic (so that I can "git am" in a new
iteration of patches on top). As the syntax "git diff master..."
is symmetric with it, if one were to change, both should change to
the same.
Thanks.
next prev parent reply other threads:[~2025-10-16 13:44 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-15 22:07 [PATCH] BreakingChanges: say that `git diff X..Y` syntax will be removed in 3.0 Martin von Zweigbergk via GitGitGadget
2025-10-15 22:19 ` Junio C Hamano
2025-10-15 23:06 ` Martin von Zweigbergk
2025-10-16 17:42 ` Kristoffer Haugsbakk
2025-10-16 20:32 ` D. Ben Knoble
2025-10-15 22:28 ` brian m. carlson
2025-10-16 13:44 ` Junio C Hamano [this message]
2025-10-16 16:38 ` Martin von Zweigbergk
2025-10-16 17:02 ` Kristoffer Haugsbakk
2025-10-16 17:12 ` Martin von Zweigbergk
2025-10-16 16:56 ` Junio C Hamano
2025-10-16 20:42 ` D. Ben Knoble
2025-10-16 1:28 ` Justin Tobler
2025-10-16 16:34 ` Martin von Zweigbergk
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=xmqqh5vz7ygc.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=martinvonz@gmail.com \
--cc=martinvonz@google.com \
--cc=sandals@crustytoothpaste.net \
/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).