Re: [PATCH v2] transport-helper: check if the dry-run is supported
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 21, 2013, 16:55 UTC
- Message-ID
- <7vli78p920.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1369099924-13763-1-git-send-email-felipe.contreras@gmail.com>
Felipe Contreras <felipe.contreras@gmail.com> writes:
Show 7 quoted lines
> Certain remote-helpers (the ones with 'export') would try to push > regardless. > > Obviously this is not what the user wants. > > Also, add a check for the 'dry-run' option, so remote-helpers can > implement it.
This sounds like a good thing to do. Perhaps the refspec mapping can be handled the same way as a backend feature so that you do not have to unconditionally disable it in the other patch.
Will queue both but not for 1.8.3.
Show 22 quoted lines
>
> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> ---
> transport-helper.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/transport-helper.c b/transport-helper.c
> index 522d791..c8c39fc 100644
> --- a/transport-helper.c
> +++ b/transport-helper.c
> @@ -789,6 +789,11 @@ static int push_refs_with_export(struct transport *transport,
> struct string_list revlist_args = STRING_LIST_INIT_NODUP;
> struct strbuf buf = STRBUF_INIT;
>
> + if (flags & TRANSPORT_PUSH_DRY_RUN) {
> + if (set_helper_option(transport, "dry-run", "true") != 0)
> + die("helper %s does not support dry-run", data->name);
> + }
> +
> helper = get_helper(transport);
>
> write_constant(helper->in, "export\n");