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

Clone a repo and checkout a specifc remote branch

From
PCPaolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Date
Mar 7, 2009, 11:42 UTC
Message-ID
<4d8e3fd30903070342q584315cjcd059dcfe558dcfd@mail.gmail.com>

Hi list, I've got a few questions from a friend that used git for the first time, I answered to all of them but the following.

Scenario: He knows the URl of a git repository which contains a few branches. He is interested only to a single specific branch. He expected to manage to clone the specific remote branch with a single command, instead he had to learn the following procedure:

$ git clone git://uri_of_the_repo localdir
$ cd localdir
$ git branch
* master
# OK, so now he cloned the whole repository and checked out the master branch
$ git checkout mybranch origin/coolbranch

Wouldn't be an improvement to let the user to specify which remote branch he want to be checked out after a clone? Something like: $ git clone git://uri_of_the_repo:coolbranch localdir to get a clone of the whole repository and to check out the origin/coolbranch remote branch?

I quickly discussed this scenario on the #git channel and a user
suggested to use the following procedure:
$ git init
$ git fetch git://uri_of_the_repo coolbranch
which was new to me, I tried it as follow:
$ git fetch git://git.kernel.org/pub/scm/git/git.git man
remote: Counting objects: 7319, done.←[K
remote: Compressing objects: 100% (1536/1536), done.←[K
remote: Total 7319 (delta 5640), reused 7290 (delta 5625)←[K
Receiving objects: 100% (7319/7319), 1.40 MiB | 110 KiB/s, done.
Resolving deltas: 100% (5640/5640), done.
From git://git.kernel.org/pub/scm/git/git
 * branch            man        -> FETCH_HEAD
but now I don't understand how to checkout the branch :-/
Ciao,
-- 
Paolo
http://paolo.ciarrocchi.googlepages.com/
http://mypage.vodafone.it/
Next: Patrick Notz
Message 1 of 3 in “Clone a repo and checkout a specifc remote branch”
  1. Paolo CiarrocchiMar 7, 2009
  2. Patrick NotzMar 7, 2009
  3. Paolo CiarrocchiMar 7, 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.