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

Odd error when doing "clone && cd && checkout -b"

From
Jacob Helwig <jacob.helwig@gmail.com>
Date
Feb 3, 2010, 07:00 UTC
Message-ID
<20100203070016.GA18089@vfb-9.home>

In talking with someone in the IRC channel, I ran across something that I thought was very odd behavior. I'm sure there's a very simple explanation, but I can't think of what it might be.

The person was getting "fatal: git checkout: updating paths is incompatible with switching branches.", when they tried to create a new tracking branch, and switch to it, with a fresh clone. I was able to reproduce this, but only by one-lining the "clone && cd && checkout -b".

When the "checkout -b" fails from the one-lined version, immediately doing the "checkout -b" on its own succeeds.

The output below is from zsh (4.3.10), however I get the exact same behavior when I run the commands using bash (4.0.33). I was testing this using Git 1.6.6.1.598.g661e2.

== One-lined Version ==

vfb-9 ~/tmp % git clone git://github.com/rich97/CakeCMP.git && cd CakeCMP && git checkout -b permissions-rewrite origin/permissions-rewrite Initialized empty shared Git repository in /home/jhe/tmp/CakeCMP/.git/ remote: Counting objects: 1508, done. remote: Compressing objects: 100% (1432/1432), done. remote: Total 1508 (delta 256), reused 1235 (delta 60) Receiving objects: 100% (1508/1508), 844.43 KiB | 104 KiB/s, done. Resolving deltas: 100% (256/256), done. fatal: git checkout: updating paths is incompatible with switching branches. Did you intend to checkout 'origin/permissions-rewrite' which can not be resolved as commit?

vfb-9 ~/tmp/CakeCMP on master(a026490) sigexit % git checkout -b permissions-rewrite origin/permission-rewrite Branch permissions-rewrite set up to track remote branch permission-rewrite from origin. Switched to a new branch 'permissions-rewrite'

== Running "checkout -b" on its own ==

vfb-9 ~/tmp % git clone git://github.com/rich97/CakeCMP.git && cd CakeCMP Initialized empty shared Git repository in /home/jhe/tmp/CakeCMP/.git/ remote: Counting objects: 1508, done. remote: Compressing objects: 100% (1432/1432), done. remote: Total 1508 (delta 256), reused 1235 (delta 60) Receiving objects: 100% (1508/1508), 844.43 KiB | 93 KiB/s, done. Resolving deltas: 100% (256/256), done.

vfb-9 ~/tmp/CakeCMP on master(a026490) % git checkout -b permissions-rewrite origin/permission-rewrite Branch permissions-rewrite set up to track remote branch permission-rewrite from origin. Switched to a new branch 'permissions-rewrite'

vfb-9 ~/tmp/CakeCMP on permissions-rewrite(ca687f1) % git --version git version 1.6.6.1.598.g661e2

-Jacob
Next: Johannes Sixt
Message 1 of 3 in “Odd error when doing "clone && cd && checkout -b"”
  1. Jacob HelwigFeb 3, 2010
  2. Johannes SixtFeb 3, 2010
  3. Jacob HelwigFeb 3, 2010

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.