Ron Garret <ron1@xxxxxxxxxxx> writes: > If so, what? .git/refs/heads seems to contain all the branch info, so > what is the branches directory for? See gitrepository-layout(5): 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. and git-pull(1): REMOTES ------- The name of one of the following can be used instead of a URL as `<repository>` argument: * a remote in the git configuration file: `$GIT_DIR/config`, * a file in the `$GIT_DIR/remotes` directory, or * a file in the `$GIT_DIR/branches` directory. All of these also allow you to omit the refspec from the command line because they each contain a refspec which git will use by default. [...] Named file in `$GIT_DIR/branches` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ You can choose to provide the name of a file in `$GIT_DIR/branches`. The URL in this file will be used to access the repository. This file should have the following format: ------------ <url>#<head> ------------ `<url>` is required; `#<head>` is optional. Depending on the operation, git will use one of the following refspecs, if you don't provide one on the command line. `<branch>` is the name of this file in `$GIT_DIR/branches` and `<head>` defaults to `master`. Ancient history, if somewhat useful for some workflow[1]. It came from Cogito, which was alternate UI for git. [1] Namely one of main Linux kernel developers (Linus lieutienants) has scripts around this way of specifying remote information. -- Jakub Narebski Poland ShadeHawk on #git -- 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