summaryrefslogtreecommitdiff
path: root/transport-helper.c
diff options
context:
space:
mode:
authorJohn Keeping <john@keeping.me.uk>2013-04-14 10:57:07 (GMT)
committerJunio C Hamano <gitster@pobox.com>2013-04-15 16:03:16 (GMT)
commitb8bd826f3a4196bc80a3c957503b421709b401ab (patch)
treebc88536a6d26fd6fcff4b7e27c0b2b55d0e8be15 /transport-helper.c
parentcd16c59bfa216b7e153f357ccfa89d2a567b8c00 (diff)
downloadgit-b8bd826f3a4196bc80a3c957503b421709b401ab.zip
git-b8bd826f3a4196bc80a3c957503b421709b401ab.tar.gz
git-b8bd826f3a4196bc80a3c957503b421709b401ab.tar.bz2
transport-helper: pass --signed-tags=warn-strip to fast-export
Currently, attempting to push a signed tag to a remote helper which uses fast-export results in the remote helper failing because the default fast-export action for signed tags is "abort". This is not helpful for users because there is no way to pass additional arguments to fast-export here, either from the remote helper or from the command line. In general, the signature will be invalidated by whatever transformation a remote helper performs on a tag to push it to a repository in a different format so the correct behaviour is to strip the tag. Doing this silently may surprise people, so use "warn-strip" to issue a warning when a signed tag is encountered. Signed-off-by: John Keeping <john@keeping.me.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'transport-helper.c')
-rw-r--r--transport-helper.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/transport-helper.c b/transport-helper.c
index dcd8d97..3ce8259 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -410,9 +410,10 @@ static int get_exporter(struct transport *transport,
/* we need to duplicate helper->in because we want to use it after
* fastexport is done with it. */
fastexport->out = dup(helper->in);
- fastexport->argv = xcalloc(5 + revlist_args->nr, sizeof(*fastexport->argv));
+ fastexport->argv = xcalloc(6 + revlist_args->nr, sizeof(*fastexport->argv));
fastexport->argv[argc++] = "fast-export";
fastexport->argv[argc++] = "--use-done-feature";
+ fastexport->argv[argc++] = "--signed-tags=warn-strip";
if (data->export_marks)
fastexport->argv[argc++] = data->export_marks;
if (data->import_marks)