Re: git bug? + question
From: Andy Whitcroft <hidden>
Date: 2016-08-11 19:24:37
Josef Weidendorfer wrote:
On Saturday 04 November 2006 06:03, Shawn Pearce wrote:quoted
After reading your reply you are probably correct. I can see there may be workflows that want every remote branch also created as a local branch. I could certainly live with a command line option to clone, e.g.: git clone --only vmdvt,vmtip user@host:/path...Still missing here: What branch should be checked out after cloning?
Does any need to be checked out? Or perhap I should put it another way, when we make a virgin repository we default to master checked out but its not joined to the DAG. Perhaps we can just init-db and fetch the specified branches and we are done. The user will then checkout things as they need and if they do not need master they can lose it.
Perhaps it is better to extend git-checkout to allow to do the correct thing when the user specifies a read-only branch from refs/remotes. E.g. with refs/remotes/origin/vmdvt, git checkout origin/vmdvt should create a new local branch refs/heads/vmdvt which forks from remotes/origin/vmdvt (and abort with error if refs/heads/vmdvt already exists without being the local development branch for remotes/origin/vmdvt), add to .git/config [branch "vmdvt"] remote = origin merge = remotes/origin/vmdvt and switch to this new created branch. Given this addition to git-checkout, the implicit default action after cloning with --use-separate-remote should be git checkout origin/master where "master" can be changed on the git-clone command line to another branch, e.g. "--checkout vmdvt". IMHO, this addition to git-checkout would make it a lot easier to work with --use-separate-remote, as there, every branch other the master is read-only. And if you have two remote repositories with a master branch each, and you want to develop locally on both, this could be accomplished with git checkout -b othermaster remotes/otherrepo/master
-apw