Thread (17 messages) 17 messages, 8 authors, 2021-05-11

Re: git switch/restore, still experimental?

From: Johannes Schindelin <hidden>
Date: 2021-05-05 14:18:46

Hi Elijah,

On Tue, 4 May 2021, Elijah Newren wrote:
On Tue, May 4, 2021 at 3:36 AM Gábor Farkas [off-list ref] wrote:
quoted
the "git switch" and "git restore" commands were released two years
ago, but the manpage still says "THIS COMMAND IS EXPERIMENTAL. THE
BEHAVIOR MAY CHANGE.".

i'd love to use them, but this warning gives me pause, perhaps i
should wait until it stops being experimental, i worry that it might
change in behavior unexpectedly and cause problems for me.

considering that they were released two years ago, could the
experimental-warning be removed now?
This probably makes sense.  The author of switch and restore isn't
involved in the git project anymore.  He decided to work on other
things, which was and is a big loss for us.  I think others (myself
included) didn't know all the things that might have been in Duy's
head that he wanted to verify were working well before marking this as
good, but these two commands have generally been very well received
and it has been a few years.  Personally, I'm not aware of anything
that we'd need or want to change with these commands.
I think that part of the intention to mark this as experimental was to
gather feedback about the commands. After all, the goal was to improve the
user experience of Git (because `git checkout` does too many things, and
its major accomplishment is to confuse literally every single new Git
user).

However, that hope never was fulfilled if I may say so, we simply did not
attract the best-suited experts to this mailing list, not if what we set
out was to improve usability.

Which leaves us with two hard choices regarding switch/restore, none of
them really being comfortable:

- we scrap switch/restore because their usability is not really all that
  improved relative to `git checkout`.

- we leave switch/restore as-are (because by now, changing the options or
  the design would be almost certainly disruptive to users who already
  tried to adopt the new commands, I being one of those users).

I say that neither of them is a really splendid choice because the
original goal is not only not accomplished, but I would say it is even
harder now than it was when we accepted switch/restore into an official
release, because of that experience with switch/restore. We simply do not
have the right expertise on this list, and therefore anything we do will
always have that "UX designed by an engineer" feel.

So I'm not sure what to do, either.

Ciao,
Dscho
That said, we're only a few weeks from -rc0, and I'd rather remove the
experimental label early in a release cycle, so maybe this would be a
good thing to do after the June git-2.32 release.  That'd give plenty
of time for others to chime in with anything they might be aware of
that they want or need fixed.

Thanks for flagging this.

Elijah
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help