[PATCH] transport-helper: barf when user tries old:new
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- May 21, 2013, 01:02 UTC
- Message-ID
- <1369098165-8727-1-git-send-email-felipe.contreras@gmail.com>
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> ---
I did fix this properly, but was beaten by shoots from the hip[1]. I won't bother rationalizing if this makes sense for 'master', or writing tests. This patch can't possibly make anything worst. If somebody is interested, there's proper fix: [1], with explanation, tests, and everything.
[1] http://article.gmane.org/gmane.comp.version-control.git/223706
transport-helper.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/transport-helper.c b/transport-helper.c index 522d791..a782a9b 100644 --- a/transport-helper.c +++ b/transport-helper.c @@ -813,9 +813,11 @@ static int push_refs_with_export(struct transport *transport, die("remote-helpers do not support ref deletion"); } - if (ref->peer_ref) + if (ref->peer_ref) { + if (strcmp(ref->peer_ref->name, ref->name)) + die("remote-helpers do not support old:new syntax"); string_list_append(&revlist_args, ref->peer_ref->name); - + } } if (get_exporter(transport, &exporter, &revlist_args))
-- 1.8.3.rc3.1.gf572ce5.dirty