git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Michael J Gruber <git@drmicha.warpmail.net>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	Darren Hart <darren@dvhart.com>,
	git@vger.kernel.org
Subject: Re: [PATCH] Documentation/git-clone: describe --mirror more verbose
Date: Mon, 4 Oct 2010 10:50:50 +0200	[thread overview]
Message-ID: <20101004085050.GQ28679@pengutronix.de> (raw)
In-Reply-To: <4CA98EF1.1050102@drmicha.warpmail.net>

Hello Michael,

On Mon, Oct 04, 2010 at 10:23:13AM +0200, Michael J Gruber wrote:
> Uwe Kleine-König venit, vidit, dixit 04.10.2010 09:50:
> > Hello Michael,
> > 
> > On Mon, Oct 04, 2010 at 09:25:17AM +0200, Michael J Gruber wrote:
> >> Steven Rostedt venit, vidit, dixit 01.10.2010 23:16:
> >>> On Fri, 2010-10-01 at 13:18 -0700, Darren Hart wrote:
> >>>> 2010/10/1 Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
> >>>>> Some people in #linux-rt claimed that you cannot define "--mirror" with
> >>>>> "mirror".
> >>>>>
> >>
> >> I'd say "mirror" is a commonly known term for an exact copy. Moreover,
> >> the text below doesn't explain what a mirror is either, only how
> >> "update" behaves in it.
> > hmm.  The --mirror option doesn't have any effect (apart from the
> > changes in the config file) until you update.  So I think it's natural
> > to talk about git update.  No?
> 
> "git clone" (with or without --mirror) does a couple of things, and it
> does them differently when "--mirror" is used. It mirrors each branch
> from the source repo in the target repo under the same name, including
> for example any remote branches in the source repo. This is completely
> different without "--mirror", where clone does not look at the source's
> remote branches at all. Also, it sets up a mirroring refspec, i.e.
> +refs/*:refs/*
Ah, didn't notice that.

> [...]
> This makes me think that --mirror should be explained on top of --bare.
OK.

> For example:
> 
> In addition to the mapping of local branches to local branches which
> --bare does, --mirror maps all refs which the source has under the same
> name in the target (including remote branches, notes etc.) and sets up a
> refspec configuration so that all these refs are updated by a `git
> update` in the target repo.
Hmm, I didn't understand this when I read it the first few times.  The
special thing is that --mirror maps *all* refs, not *same name*.

So maybe:

	Set up a mirror of the remote repository.  This implies `--bare`.
	Compared to `--bare`, `--mirror` doesn't only map local branches of
	the remote to local branches of the target but all refs
	(including remote branches, notes etc.) and sets up a refspec
	configuration such that all these refs are overwritten by a
	`git remote update` in the target repository.

I choosed to write "overwritten" instead of "updated" to make it clearer
that it makes no sence to push into these branches from a different
source.  Should this be noted more explicit?

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

  reply	other threads:[~2010-10-04  8:51 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-01 20:13 [PATCH] Documentation/git-clone: describe --mirror more verbose Uwe Kleine-König
2010-10-01 20:18 ` Darren Hart
2010-10-01 21:16   ` Steven Rostedt
2010-10-04  7:25     ` Michael J Gruber
2010-10-04  7:50       ` Uwe Kleine-König
2010-10-04  8:23         ` Michael J Gruber
2010-10-04  8:50           ` Uwe Kleine-König [this message]
2010-10-04  9:28             ` Michael J Gruber
2010-10-04  9:51               ` [PATCH v2] " Uwe Kleine-König
2010-10-04 12:47                 ` Steven Rostedt
2010-10-04 12:52                 ` Michael J Gruber
2010-10-04 14:42                 ` Darren Hart
2010-10-04 17:28                   ` [PATCH v3] Documentation/git-clone: describe --mirror more verbosely Uwe Kleine-König
2010-10-04 17:29               ` [PATCH] Documentation/git-clone: describe --mirror more verbose Junio C Hamano
2010-10-04 17:39                 ` Matthieu Moy
2010-10-04 19:05                   ` Darren Hart
2010-10-05  7:01                 ` Uwe Kleine-König
2010-10-05 15:41                   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20101004085050.GQ28679@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=darren@dvhart.com \
    --cc=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).