# git fetch inside a bare repo does nothing

5 messages from 2007-07-13 to 2007-07-13. Participants: Peter Baumann, CJ van den Berg, Alex Riesen.
Thread: https://gitlist.dev/t/9019

## Peter Baumann, 2007-07-13 10:33

Subject: git fetch inside a bare repo does nothing
Message-ID: <20070713103303.GD18199@xp.machine.xx>
URL: https://gitlist.dev/e/20070713103303.GD18199%40xp.machine.xx

```
kblin on IRC wanted to know how to update a bare repo with fetching.
He wants to have a bare repo of samba as a mirror and clone from this
mirror to avoid network traffic and to have several git repos which
could all have a different branch checked out. For a better description
see [1].

I suggested to use "git fetch --bare" inside the bare repo, but this
doesn't work. So what I'm asking now if this is intenional behaviour or
a bug, so please could someone  shed some light on it?  Or how is the
prefered method to update a bare repo *without* pushing to it?

-Peter

[1]: http://wiki.samba.org/index.php/Using_Git_for_Samba_Development

IRC log (unneccessary comments removed):

11:30 < kblin> how do I update a branch I cloned with --bare?
11:31 < madduck> GIT_DIR=/path/to/dir git pull >
11:31 < madduck> ?
11:31 < madduck> without the >
11:32 < kblin> and for remote repositories, I'd use a URL?
11:37 < madduck> uh, you can't reallly "update" remote repositories in that sense
11:37 < madduck> what are you trying to do?
11:37 < madduck> let's have more info!
11:51 < kblin> madduck: I'm trying to follow http://wiki.samba.org/index.php/Using_Git_for_Samba_Development
11:52 < kblin> madduck: basically, I want to have a --bare repository that mirrors the remote repository
               and have a couple of working repositories for the different branches
11:57 < siprbaum> kblin: I think "git --bare fetch" inside your bare repo will solve your problem
[...]
12:01 < kblin> siprbaum: git --bare fetch doesn't seem to fetch anything new either
12:01 < siprbaum> perhaps there isn't anything new to fetch?
12:02 < siprbaum> but i'm just guessing here and reading the manpage (git) suggested that git --bare fetch _could_ work
12:02 < kblin> siprbaum: that'd surpise me. I've got a clone without the --bare, and that has a new commit
[...]
12:14 < siprbaum> kblin: and you are right. i just tried to fetch inside a bare repo and it doesn't work

```

## CJ van den Berg, 2007-07-13 11:32

Subject: Re: git fetch inside a bare repo does nothing
Message-ID: <20070713113209.GA9046@prefect.vdbonline.net>
URL: https://gitlist.dev/e/20070713113209.GA9046%40prefect.vdbonline.net
In-Reply-To: <20070713103303.GD18199@xp.machine.xx>

```
On Fri, Jul 13, 2007 at 12:33:03PM +0200, Peter Baumann wrote:
> kblin on IRC wanted to know how to update a bare repo with fetching.
> He wants to have a bare repo of samba as a mirror and clone from this
> mirror to avoid network traffic and to have several git repos which
> could all have a different branch checked out. For a better description
> see [1].
> 
> I suggested to use "git fetch --bare" inside the bare repo, but this
> doesn't work. So what I'm asking now if this is intenional behaviour or
> a bug, so please could someone  shed some light on it?  Or how is the
> prefered method to update a bare repo *without* pushing to it?

"git fetch" works fine in a bare repo. The issue you're probably having is
that "git clone --bare" does not add a [remote "origin"] section to the
config file like regular "git clone" does, so "git fetch" has nothing to
do. Just add a remote section (either with "git remote add" or manually) and
regular "git fetch" will work fine.

Just for reference, this is the remote section that is equivalent to the
original "git clone --bare your_uri_here":

[remote "origin"]
        url = your_uri_here
        fetch = +refs/heads/*:refs/heads/*


-- 
CJ van den Berg

mailto:cj@vdbonline.com
  xmpp:cj@vdbonline.com

```

## Peter Baumann, 2007-07-13 11:54

Subject: Re: git fetch inside a bare repo does nothing
Message-ID: <20070713115426.GA4608@xp.machine.xx>
URL: https://gitlist.dev/e/20070713115426.GA4608%40xp.machine.xx
In-Reply-To: <20070713113209.GA9046@prefect.vdbonline.net>

```
On Fri, Jul 13, 2007 at 01:32:10PM +0200, CJ van den Berg wrote:
> On Fri, Jul 13, 2007 at 12:33:03PM +0200, Peter Baumann wrote:
> > kblin on IRC wanted to know how to update a bare repo with fetching.
> > He wants to have a bare repo of samba as a mirror and clone from this
> > mirror to avoid network traffic and to have several git repos which
> > could all have a different branch checked out. For a better description
> > see [1].
> > 
> > I suggested to use "git fetch --bare" inside the bare repo, but this
> > doesn't work. So what I'm asking now if this is intenional behaviour or
> > a bug, so please could someone  shed some light on it?  Or how is the
> > prefered method to update a bare repo *without* pushing to it?
> 
> "git fetch" works fine in a bare repo. The issue you're probably having is
> that "git clone --bare" does not add a [remote "origin"] section to the
> config file like regular "git clone" does, so "git fetch" has nothing to
> do. Just add a remote section (either with "git remote add" or manually) and
> regular "git fetch" will work fine.
> 
> Just for reference, this is the remote section that is equivalent to the
> original "git clone --bare your_uri_here":
> 
> [remote "origin"]
>         url = your_uri_here
>         fetch = +refs/heads/*:refs/heads/*
> 
> 
Thx. This wasn't exactly my problem but it lead me to the real problem:
I used
	git fetch /path/to/repo master

and had forgotten that I had to specify the local ref, too.

	git fetch /path/to/repo master:master

worked as expected. Sorry for the noise.

-Peter

```

## Alex Riesen, 2007-07-13 12:48

Subject: Re: git fetch inside a bare repo does nothing
Message-ID: <81b0412b0707130548s709709a2nf621b19d10e238a0@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b0707130548s709709a2nf621b19d10e238a0%40mail.gmail.com
In-Reply-To: <20070713103303.GD18199@xp.machine.xx>

```
On 7/13/07, Peter Baumann <waste.manager@gmx.de> wrote:
> I suggested to use "git fetch --bare" inside the bare repo, but this

"git --bare fetch".

You swapped "fetch" and "--bare".

```

## Peter Baumann, 2007-07-13 17:16

Subject: Re: git fetch inside a bare repo does nothing
Message-ID: <20070713171648.GA6883@xp.machine.xx>
URL: https://gitlist.dev/e/20070713171648.GA6883%40xp.machine.xx
In-Reply-To: <81b0412b0707130548s709709a2nf621b19d10e238a0@mail.gmail.com>

```
On Fri, Jul 13, 2007 at 02:48:19PM +0200, Alex Riesen wrote:
> On 7/13/07, Peter Baumann <waste.manager@gmx.de> wrote:
>> I suggested to use "git fetch --bare" inside the bare repo, but this
>
> "git --bare fetch".
>
> You swapped "fetch" and "--bare".

Sorry, this was only a typo in the mail.
But the problem got fixed, anyway.

-Peter

```
