git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3] branch: allow "-" as a short-hand for "previous branch"

From
Rubén Justo <rjusto@gmail.com>
Date
Aug 16, 2022, 21:18 UTC
Message-ID
<c24313c1-3ade-eebc-77ae-bf4489b993ab@gmail.com>
In-Reply-To
<pull.1315.git.1659910949556.gitgitgadget@gmail.com>
From: Rubén Justo <rjusto@gmail.com>

Align "branch -d" with the intuitive use of "-" as a short-hand for "@{-1}", like in "checkout", "rebase" and "merge" commands.

$ git branch -d - # short-hand for: "git branch -d @{-1}" $ git branch -D - # short-hand for: "git branch -D @{-1}"

So I can do:

$ git checkout work_to_review $ git checkout - $ git merge - # or git rebase - $ git branch -d -

Signed-off-by: Rubén Justo <rjusto@gmail.com>
---
     branch: allow "-" as a short-hand for "previous branch"
     Align "branch -d" with the intuitive use of "-" as a short-hand for
     "@{-1}", like in "checkout", "rebase" and "merge" commands.
     $ git branch -d - # short-hand for: "git branch -d @{-1}" $ git branch
     -D - # short-hand for: "git branch -D @{-1}"
     So I can do:
     $ git checkout work_to_review $ git checkout - $ git merge - # or git
     rebase - $ git branch -d -
     Signed-off-by: Rubén Justo rjusto@gmail.com
Published-As: 
https://github.com/gitgitgadget/git/releases/tag/pr-1315%2Frjusto%2Fmaster-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git 
pr-1315/rjusto/master-v3
Pull-Request: https://github.com/gitgitgadget/git/pull/1315
Range-diff vs v2:
  1:  0fe48ada15b ! 1:  cc28546aea9 allow "-" as short-hand for "@{-1}" 
in "branch -d"
      @@
        ## Metadata ##
      -Author: rjusto <rjusto@gmail.com>
      +Author: Rubén Justo <rjusto@gmail.com>
        ## Commit message ##
      -    allow "-" as short-hand for "@{-1}" in "branch -d"
      +    branch: allow "-" as short-hand for "@{-1}" in "branch -d"
           Align "branch -d" with the intuitive use of "-" as a short-hand
           for "@{-1}", like in "checkout", "rebase" and "merge" commands.
      @@ Commit message
           $ git merge - # or git rebase -
           $ git branch -d -
      -    Signed-off-by: rjusto <rjusto@gmail.com>
      +    Signed-off-by: Rubén Justo <rjusto@gmail.com>
        ## builtin/branch.c ##
       @@ builtin/branch.c: static int delete_branches(int argc, const 
char **argv, int force, int kinds,
  builtin/branch.c | 3 +++
  1 file changed, 3 insertions(+)
diff --git a/builtin/branch.c b/builtin/branch.c
index 55cd9a6e998..7f7589bd4a8 100644
--- a/builtin/branch.c
+++ b/builtin/branch.c
@@ -241,6 +241,9 @@ static int delete_branches(int argc, const char 
**argv, int force, int kinds,
  			die(_("Couldn't look up commit object for HEAD"));
  	}

+	if ((argc == 1) && !strcmp(argv[0], "-"))
+		argv[0] = "@{-1}";
+
  	for (i = 0; i < argc; i++, strbuf_reset(&bname)) {
  		char *target = NULL;
  		int flags = 0;

base-commit: 679aad9e82d0dfd8ef3d1f98fa4629665496cec9
-- 
2.36.1
Previous: Rubén JustoNext: Rubén Justo
Message 21 of 24 in “branch: allow "-" as a short-hand for "previous branch"”
  1. branch: allow "-" as a short-hand for "previous branch"Rubén Justo via GitGitGadget, Aug 7, 2022
  2. Johannes SchindelinAug 8, 2022
  3. Junio C HamanoAug 8, 2022
  4. Rubén JustoAug 13, 2022
  5. Junio C HamanoAug 13, 2022
  6. Johannes SchindelinAug 16, 2022
  7. Johannes SchindelinAug 19, 2022
  8. Junio C HamanoAug 19, 2022
  9. Rubén JustoAug 25, 2022
  10. Junio C HamanoAug 25, 2022
  11. Rubén JustoAug 25, 2022
  12. Rubén JustoAug 13, 2022
  13. Junio C HamanoAug 8, 2022
  14. Rubén JustoAug 13, 2022
  15. Johannes SchindelinAug 16, 2022
  16. Rubén JustoAug 16, 2022
  17. Johannes SchindelinAug 19, 2022
  18. allow "-" as short-hand for "@{-1}" in "branch -d"Rubén Justo via GitGitGadget, Aug 16, 2022
  19. Junio C HamanoAug 16, 2022
  20. Rubén JustoAug 16, 2022
  21. branch: allow "-" as a short-hand for "previous branch"Rubén Justo, Aug 16, 2022
  22. branch: allow "-" as a shortcut for "previous branch"Rubén Justo, Sep 11, 2022
  23. Junio C HamanoSep 12, 2022
  24. Rubén JustoSep 12, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.