threads / discuss / 22481

Is ./git/branches used for anything?

Subject: Is ./git/branches used for anything?

## tl;dr

4 messages between Feb 2, 2010 and Feb 2, 2010.

replies: 3people: 3as markdown or json

Sverre Rabbelier· Feb 2, 2010, 08:11 UTC · re: Ron Garret · lore

Re: Is ./git/branches used for anything?

Heya,
On Tue, Feb 2, 2010 at 09:01, Ron Garret <ron1@flownet.com> wrote:
> If so, what?  .git/refs/heads seems to contain all the branch info, so
> what is the branches directory for?
It's a leftover from the good ole' days. I think Cogito used it.
-- 
Cheers,

Sverre Rabbelier
Ron Garret· Feb 2, 2010, 08:19 UTC · re: Sverre Rabbelier · lore

Re: Is ./git/branches used for anything?

In article 
<fabb9a1e1002020011p4819b918yc9c2379bf68b4b6b@mail.gmail.com>,
 Sverre Rabbelier <srabbelier@gmail.com> wrote:
Show 7 quoted lines
> Heya,
> 
> On Tue, Feb 2, 2010 at 09:01, Ron Garret <ron1@flownet.com> wrote:
> > If so, what?  .git/refs/heads seems to contain all the branch info, so
> > what is the branches directory for?
> 
> It's a leftover from the good ole' days. I think Cogito used it.
Thanks!
rg
Jakub Narebski· Feb 2, 2010, 15:00 UTC · re: Ron Garret · lore

Re: Is ./git/branches used for anything?

Ron Garret <ron1@flownet.com> 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

← back to recent threads