diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2013-05-20 20:32:04 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-05-21 09:54:05 -0700 |
commit | 21457f5719b894a5997d66ff098b375bc2404260 (patch) | |
tree | 01c8335e11471d036c19bfa85d15d1e0116f234b | |
parent | transport-helper: barf when user tries old:new (diff) | |
download | tgif-21457f5719b894a5997d66ff098b375bc2404260.tar.xz |
transport-helper: check if the dry-run is supported
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.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | transport-helper.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/transport-helper.c b/transport-helper.c index a782a9bd71..f08eff0ab6 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"); |