Certain remote-helpers (the ones with 'export') would try to push
regardless.
Obviously this is not what the user wants.
Signed-off-by: Felipe Contreras <redacted>
---
transport-helper.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/transport-helper.c b/transport-helper.c
index 522d791..daebdd9 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -789,6 +789,9 @@ 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)
+ die("helper %s does not support dry-run", data->name);
+
helper = get_helper(transport);
write_constant(helper->in, "export\n");--
1.8.3.rc3.dirty
On Mon, May 20, 2013 at 8:09 PM, Felipe Contreras
[off-list ref] wrote:
quoted hunk
Certain remote-helpers (the ones with 'export') would try to push
regardless.
Obviously this is not what the user wants.
Signed-off-by: Felipe Contreras <redacted>
---
transport-helper.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/transport-helper.c b/transport-helper.c
index 522d791..daebdd9 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -789,6 +789,9 @@ 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)
+ die("helper %s does not support dry-run", data->name);
+
helper = get_helper(transport);
write_constant(helper->in, "export\n");
--
Actually, looking to the future, there's nothing that prevents
remote-helpers with 'export' to support dry-run, except this patch,
so:
--- 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");
--
Felipe Contreras