transport-helper: barf when user tries old:new

Otherwise with certain remote helpers (the ones that support 'export'), the users will be pushing to the wrong branch: git push topic:master Will push the topic branch, as if the user typed: git push topic Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Felipe Contreras committed May 20, 2013 at 20:02 UTC 67c9c782dae17822266783f8b5e15d73e7c91c65
1 file changed +4 -2
transport-helper.c
+4 -2
@@ -813,9 +813,11 @@ static int push_refs_with_export(struct transport *transport,
813 die("remote-helpers do not support ref deletion");
814 }
815
816 - if (ref->peer_ref)
816 + if (ref->peer_ref) {
817 + if (strcmp(ref->peer_ref->name, ref->name))
818 + die("remote-helpers do not support old:new syntax");
819 string_list_append(&revlist_args, ref->peer_ref->name);
818 -
820 + }
821 }
822
823 if (get_exporter(transport, &exporter, &revlist_args))