Subject: Re: [PATCH 0/2] builtin: unmark git-switch and git-restore as experimental

From: Junio C Hamano <[email-masked]>
Date: Tue, 22 Jul 2025 13:22:11 -0700

Justin Tobler <[email-masked]> writes:

> Greetings,
>
> In 4e43b7ff (Declare both git-switch and git-restore experimental,
> 2019-04-25), the newly introduced git-switch(1) and git-restore(1)
> commands were marked as experimental. This was done to provide time to
> make breaking changes to the interface. It has now been over six years
> since these commands were implemented and, over this time, there has not
> been much change that would warrant these commands being labeled as
> experimental.

Do you mean "as not experimental anymore", don't you?  We were
hoping that we would come up with vast UI improvements, that are so
much better that warrant departure from the past, allowing us room
to even break the backward compatibility.  Unfortunately, we do not
have much to show after 5 years.  But ...

> At this point, it seems rather difficult to justify changing
> `-c/--create` to something different as it has been that way for a long
> time and is used frequently.

... yeah, people grew to rely on that experimental UI that we added,
with intention to revamp and replace with much better alternative,
and now it is too late to change it.

> By removing the experimental marker, we help clarify the stability and
> maturity of these commands.

So, even though I may agree with the conclusion that we no longer
would allow ourselves to break backward compatibility for these two
commands, I doubt that it is stability and maturity to celebrate
about.  It (not the "have two speparate commands" part, but "leave
ourselves room to improve these two commands" part) was a clearly
failed experiment.