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

Re: [PATCH v2] branch -d: refuse deleting a branch which is currently checked out

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Mar 29, 2016, 18:47 UTC
Message-ID
<CAPig+cRd8DzW+SaX6vwa7cv8pgMZKQL_dzWy8mDOYn7QkCtM8g@mail.gmail.com>
In-Reply-To
<20160329092802.GA17915@chikuwa.rhe.jp>
On Tue, Mar 29, 2016 at 5:28 AM, Kazuki Yamaguchi <k@rhe.jp> wrote:
Show 19 quoted lines
> On Mon, Mar 28, 2016 at 12:51:21PM -0400, Eric Sunshine wrote:
>> On Mon, Mar 28, 2016 at 3:22 AM, Kazuki Yamaguchi <k@rhe.jp> wrote:
>> > +               if (kinds == FILTER_REFS_BRANCHES) {
>> > +                       char *worktree = find_shared_symref("HEAD", name);
>> > +                       if (worktree) {
>> > +                               error(_("Cannot delete the branch '%s' "
>> > +                                       "which is currently checked out at '%s'"),
>> > +                                     bname.buf, worktree);
>> > +                               free(worktree);
>>
>> Would it make sense to show all worktrees at which this branch is
>> checked out, rather than only one, or is that not worth the effort and
>> extra code ugliness?
>
> I thought one is enough.
> I think the worktrees usually won't be more than one, considering
> "git worktree add" requires additional option to check out an already
> checked out branch. Also, since the branch is not actually deleted at
> that time, the user can safely retry after checking "git worktree list".

Fair enough. A more thorough error message can be done a future enhancement if there is a need for it.

Previous: Kazuki YamaguchiNext: Kazuki Yamaguchi
Message 13 of 17 in “branch: fix branch operations with multiple working trees”
  1. 0/5 branch: fix branch operations with multiple working treesKazuki Yamaguchi, Mar 25, 2016
  2. 1/5 refs: add new flag RESOLVE_REF_COMMON_DIR to resolve_ref_unsafeKazuki Yamaguchi, Mar 25, 2016
  3. 2/5 refs: add REF_COMMON_DIR flagKazuki Yamaguchi, Mar 25, 2016
  4. 3/5 refs: add create_symref_common_dir as a variation of create_symrefKazuki Yamaguchi, Mar 25, 2016
  5. 4/5 branch -m: update all per-worktree HEADsKazuki Yamaguchi, Mar 25, 2016
  6. 5/5 branch -d: refuse deleting a branch which is currently checked outKazuki Yamaguchi, Mar 25, 2016
  7. Junio C HamanoMar 25, 2016
  8. Eric SunshineMar 27, 2016
  9. Kazuki YamaguchiMar 28, 2016
  10. branch -d: refuse deleting a branch which is currently checked outKazuki Yamaguchi, Mar 28, 2016
  11. Eric SunshineMar 28, 2016
  12. Kazuki YamaguchiMar 29, 2016
  13. Eric SunshineMar 29, 2016
  14. branch -d: refuse deleting a branch which is currently checked outKazuki Yamaguchi, Mar 29, 2016
  15. Eric SunshineMar 29, 2016
  16. Junio C HamanoMar 25, 2016
  17. Kazuki YamaguchiMar 27, 2016

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.