Re: [PATCH v4] branch: allow "-" as a shortcut for "previous branch"
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 12, 2022, 17:52 UTC
- Message-ID
- <xmqqedwgfpkr.fsf@gitster.g>
- In-Reply-To
- <dbc0b0d8-4b0a-8d4c-1bfa-8bdcd99310e7@gmail.com>
Rubén Justo <rjusto@gmail.com> writes:
> Teach "git branch" the use of "-" as a shortcut for "@{-1}", like in "checkout
> -", "merge -" and other commands.I am sorry that this is now at v4, but let's not do this.
"git checkout -" was started purely because "cd -" is a fairly well known way to say "go back to the previous directory" (it is "cd ~-" in some shells).
No shells accept "mv - newname" to rename the directory we were previously in, or "rmdir -" to remove it. And "diff -r - ." does not compare the previous and the current directory recursively. But all of these can be done (with some shells) if you use a proper syntax, "mv ~- newname", "rmdir ~-", or "diff -r ~- .".
Yes, we may have by mistake added "git merge -" as well, but it is perfectly fine to say that we should admit it as a mistake and plan to possibly deprecate it in the longer term. We shouldn't use it as an excuse to make things even more confusing.
Thanks. I think your other "git branch -d @{-1}" thing is sound, though.