threads / rfc / 2507

[RFC] Not grabbing ALL branches and tags with git clone

Subject: [RFC] Not grabbing ALL branches and tags with git clone

## tl;dr

2 messages between Nov 14, 2005 and Nov 14, 2005.

replies: 1people: 2as markdown or json

Carl Baldwin· Nov 14, 2005, 18:26 UTC · lore
Greetings,

Lately, I've found that 'git clone' gives me more than what I want. Especially when there are a lot of branches and tags in the remote repository.

I have found myself doing something like the following in most cases.

% mkdir work && cd work % git init-db % git fetch <url> <refspec> % git checkout -f -b master <branch>

Usually, I will use a file in .git/remotes but you get the idea. I was thinking that it might make sense to make git clone able to do this. Change the usage of git clone so that it looks like this:

git clone [-l [-s]] [-q] [-u <upload-pack>] [-n] <repo> <dir> [<refspec>] ...

git clone would behave exactly the same way if no refspec were given but if a refspec (or multiple refspecs) were given on the command line then git clone would behave more like my series of three commands above.

I haven't looked at what it would take to patch git clone for this purpose. Just wanted to see what you thought.

Cheers, Carl

-- 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Carl Baldwin                        Systems VLSI Laboratory
 Hewlett Packard Company
 MS 88                               work: 970 898-1523
 3404 E. Harmony Rd.                 work: Carl.N.Baldwin@hp.com
 Fort Collins, CO 80525              home: Carl@ecBaldwin.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Junio C Hamano· Nov 14, 2005, 21:01 UTC · re: Carl Baldwin · lore

Re: [RFC] Not grabbing ALL branches and tags with git clone

Carl Baldwin <cnb@fc.hp.com> writes:
> Lately, I've found that 'git clone' gives me more than what I want.
> Especially when there are a lot of branches and tags in the remote
> repository.

When I make a clone of git.git, oftentimes the first thing I do is:

	$ git branch -D todo

But I've always considered that a rare exception (i.e. the todo branch is not related to the main source). What kind of unrelated things do you keep in a single repository such that you do not want to start out in sync with all of its branches?

← back to recent threads