Hi Johannes,
Thanks for the /allow!
On Mon, Aug 8, 2022 at 3:26 PM Johannes Schindelin
<Johannes.Schindelin@xxxxxx> wrote:
Touching only the `delete_branches()` function suggests that other
commands are left as before, e.g. `git branch --unset-upstream -` would
probably fail.
That's fine, but the commit message claims that the `"-"` special-casing
is introduced for the `git branch` command, not just for `git branch -d`.
die(_("Couldn't look up commit object for HEAD"));
}
At this stage, we already handled the `--remotes` flag, therefore I think
that this patch does not do the intended thing for this command-line:
git branch -d --remotes -
+ if ((argc == 1) && !strcmp(argv[0], "-")) {
+ argv[0] = "@{-1}";
+ }
This means that we only handle `git branch -d -`, but not `git branch -d
some-branch - some-other-branch`.
Could you fix that?
I did it on purpose, to be interpreted in the context of "git branch
-d/D" with just one branch: "previous branch". I agree the commit
message does not suggest this, I can fix it.
My intention is a short-hand for "delete previous branch", the same
way "git merge -" is "merge previous branch".
The workflow to address is just allow doing:
$ git checkout work_to_review
$ git checkout -
$ git merge -
$ git branch -d -
Instead of:
$ git checkout work_to_review
$ git checkout -
$ git merge -
$ git branch -d work_to_review
The syntax @{-1} is hard for me to write, and I feel intuitive "-",
like in "cd -".
Make sense to me...