Re: [PATCH] git-push: plumb in --mirror mode
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Oct 2, 2007, 12:50 UTC
- Message-ID
- <Pine.LNX.4.64.0710021347530.28395@racer.site>
- In-Reply-To
- <20071002120051.GC30636@shadowen.org>
Hi,
On Tue, 2 Oct 2007, Andy Whitcroft wrote:
Show 9 quoted lines
> @@ -137,5 +144,10 @@ int cmd_push(int argc, const char **argv, const char *prefix)
> if (all && refspec)
> usage(push_usage);
>
> + if (modes_specified > 1) {
> + error("--all and --mirror are incompatible");
> + usage(push_usage);
> + }
> +Why not
if ((flags & TRANSPORT_PUSH_ALL) && (flags & TRANSPORT_PUSH_MIRROR))?
It's more explicit.
Show 9 quoted lines
> @@ -667,6 +673,8 @@ static int git_transport_push(struct transport *transport, int refspec_nr, const
> argv[argc++] = "--all";
> if (flags & TRANSPORT_PUSH_FORCE)
> argv[argc++] = "--force";
> + if (flags & TRANSPORT_PUSH_MIRROR)
> + argv[argc++] = "--mirror";
> if (data->receivepack) {
> char *rp = xmalloc(strlen(data->receivepack) + 16);
> sprintf(rp, "--receive-pack=%s", data->receivepack);Shouldn't you then increment the "11" a few lines before that, to ensure enough space for the new argument?
Ciao, Dscho