On Sun, Nov 12, 2006 at 05:11:41PM CET, Jakub Narebski wrote: > Read Documentation/repository-layout.txt (ot it's HTML version, either > locally ot at www.kernel.org). > > branches:: > A slightly deprecated way to store shorthands to be used > to specify URL to `git fetch`, `git pull` and `git push` > commands is to store a file in `branches/'name'` and > give 'name' to these commands in place of 'repository' > argument. > > You can store only one branch to fetch per shorthand. I'm not sure about > where it is stored which branch to download, and how to name this branch > locally. I think the above is quite confusing description. This really is not about any "shorthands" at all, but just about branches (how the name implies, after all). Git and Cogito share the same models of branches. These branches are 'heads' with commit pointers stored in refs/heads/, etc. The branches/ directory says that some branches do not correspond to local development (and should never be used for that) but instead they correspond to a particular branch in some remote repository. Such branches are called "REMOTE BRANCHES". So it's "if branch X has corresponding .git/branch/X file, it's not a local branch but instead a REMOTE BRANCH corresponding to the URL stored in that file". That simple. The URL is address of the repository plus optionally a '#branchname' if the branch name in the remote repository should not default to remote HEAD or master. In addition, Git (not Cogito at this point) supports a completely different and unrelated abstraction called REMOTES. They don't have anything to do with branches. Instead, a REMOTE represents a repository URL and a set of local/remote branch pairs to handle on pulls and pushes; it has no other obvious mapping to branches and branches can be even shared between various REMOTES etc. (this is changing lately with the refs/remotes/ hierarchy, but I think that's still not in wide use). -- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ #!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj $/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1 lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/) - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html