git fetch inside a bare repo does nothing

5 messages, 3 authors, 2016-06-15 · open the first message on its own page

git fetch inside a bare repo does nothing

From: Peter Baumann <hidden>
Date: 2016-06-15 22:43:21

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

Re: git fetch inside a bare repo does nothing

From: CJ van den Berg <hidden>
Date: 2016-06-15 22:43:21

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

Re: git fetch inside a bare repo does nothing

From: Peter Baumann <hidden>
Date: 2016-06-15 22:43:21

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:
quoted
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

Re: git fetch inside a bare repo does nothing

From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:21

On 7/13/07, Peter Baumann [off-list ref] wrote:
I suggested to use "git fetch --bare" inside the bare repo, but this
"git --bare fetch".

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

Re: git fetch inside a bare repo does nothing

From: Peter Baumann <hidden>
Date: 2016-06-15 22:43:21

On Fri, Jul 13, 2007 at 02:48:19PM +0200, Alex Riesen wrote:
On 7/13/07, Peter Baumann [off-list ref] wrote:
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help