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

Re: git failing to create new branches, depending on the name

From
Thomas Rast <trast@student.ethz.ch>
Date
Aug 8, 2009, 17:04 UTC
Message-ID
<200908081904.58186.trast@student.ethz.ch>
In-Reply-To
<4A7D9AA7.1030709@gmail.com>
Artur Skawina wrote:
> + git checkout -f -b branch-g90bc1a6 askern/release
> fatal: git checkout: branch branch-g90bc1a6 already exists
This bisects to
commit 352eadc40024b141e1295693654ec20cc123844f
Author: Daniel Barkalow <barkalow@iabervon.org>
Date:   Sun Sep 21 14:36:06 2008 -0400
    Check early that a new branch is new and valid
    If you fail to update refs to change branches in checkout, your index
    and working tree are left already updated. We don't have an easy way
    to undo this, but at least we can check things that would make the
    creation of a new branch fail. These checks were in the shell version,
    and were lost in the C conversion.
    The messages are from the shell version, and should probably be made nicer.
    [jc: added test to t7201]
    Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

Not sure this is a bug though. If we allow branch names that are ambiguous to rev-parse, what do they resolve to? E.g., in the presence of only 'master', 'master-g01234567' is defined to be the same as 01234567. What is it if you also have a *branch* called 'master-g01234567'?

-- 
Thomas Rast
trast@{inf,student}.ethz.ch
Previous: Artur SkawinaNext: Artur Skawina
Message 2 of 4 in “git failing to create new branches, depending on the name”
  1. Artur SkawinaAug 8, 2009
  2. Thomas RastAug 8, 2009
  3. Artur SkawinaAug 8, 2009
  4. Daniel BarkalowAug 8, 2009

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.