summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar John Keeping <john@keeping.me.uk>2013-04-14 11:57:07 +0100
committerLibravatar Junio C Hamano <gitster@pobox.com>2013-04-15 09:03:16 -0700
commitb8bd826f3a4196bc80a3c957503b421709b401ab (patch)
treebc88536a6d26fd6fcff4b7e27c0b2b55d0e8be15 /t
parentfast-export: add --signed-tags=warn-strip mode (diff)
downloadtgif-b8bd826f3a4196bc80a3c957503b421709b401ab.tar.xz
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 't')
-rwxr-xr-xt/t5801-remote-helpers.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/t/t5801-remote-helpers.sh b/t/t5801-remote-helpers.sh
index f387027c05..9b287db650 100755
--- a/t/t5801-remote-helpers.sh
+++ b/t/t5801-remote-helpers.sh
@@ -6,6 +6,7 @@
test_description='Test remote-helper import and export commands'
. ./test-lib.sh
+. "$TEST_DIRECTORY"/lib-gpg.sh
if ! type "${BASH-bash}" >/dev/null 2>&1; then
skip_all='skipping remote-testgit tests, bash not available'
@@ -166,4 +167,13 @@ test_expect_success 'push ref with existing object' '
compare_refs local dup server dup
'
+test_expect_success GPG 'push signed tag' '
+ (cd local &&
+ git checkout master &&
+ git tag -s -m signed-tag signed-tag &&
+ git push origin signed-tag
+ ) &&
+ compare_refs local signed-tag^{} server signed-tag^{}
+'
+
test_done