diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-11-04 21:31:28 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-11-07 14:06:39 -0800 |
commit | 57b58db74c3272ac13d5d201ecedf6483b34cdfe (patch) | |
tree | b530170fcf23a0ebd9a02e01ffb63c41d0a6b3fe | |
parent | 7a2b128d13d880635e7317a9208cfa42a660f143 (diff) | |
download | git-57b58db74c3272ac13d5d201ecedf6483b34cdfe.tar.gz git-57b58db74c3272ac13d5d201ecedf6483b34cdfe.tar.xz |
merge: notice local merging of tags and keep it unwrapped
This also updates the autogenerated merge title message from "merge commit X"
to "merge tag X", and its effect can be seen in the changes to the test suite.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/merge.c | 5 | ||||
-rwxr-xr-x | t/t4202-log.sh | 4 | ||||
-rwxr-xr-x | t/t7600-merge.sh | 6 | ||||
-rwxr-xr-x | t/t7604-merge-custom-message.sh | 2 | ||||
-rwxr-xr-x | t/t7608-merge-messages.sh | 4 |
5 files changed, 13 insertions, 8 deletions
diff --git a/builtin/merge.c b/builtin/merge.c index dffd5ec12..6a44b6d48 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -441,6 +441,11 @@ static void merge_name(const char *remote, struct strbuf *msg) sha1_to_hex(branch_head), remote); goto cleanup; } + if (!prefixcmp(found_ref, "refs/tags/")) { + strbuf_addf(msg, "%s\t\ttag '%s' of .\n", + sha1_to_hex(branch_head), remote); + goto cleanup; + } if (!prefixcmp(found_ref, "refs/remotes/")) { strbuf_addf(msg, "%s\t\tremote-tracking branch '%s' of .\n", sha1_to_hex(branch_head), remote); diff --git a/t/t4202-log.sh b/t/t4202-log.sh index 983e34bec..222f7559e 100755 --- a/t/t4202-log.sh +++ b/t/t4202-log.sh @@ -346,11 +346,11 @@ test_expect_success 'set up more tangled history' ' ' cat > expect <<\EOF -* Merge commit 'reach' +* Merge tag 'reach' |\ | \ | \ -*-. \ Merge commit 'octopus-a'; commit 'octopus-b' +*-. \ Merge tags 'octopus-a' and 'octopus-b' |\ \ \ * | | | seventh | | * | octopus-b diff --git a/t/t7600-merge.sh b/t/t7600-merge.sh index 3008e4e12..b91d022bc 100755 --- a/t/t7600-merge.sh +++ b/t/t7600-merge.sh @@ -38,8 +38,8 @@ printf '%s\n' '1 X' 2 3 4 '5 X' 6 7 8 '9 X' >result.1-5-9 >empty create_merge_msgs () { - echo "Merge commit 'c2'" >msg.1-5 && - echo "Merge commit 'c2'; commit 'c3'" >msg.1-5-9 && + echo "Merge tag 'c2'" >msg.1-5 && + echo "Merge tags 'c2' and 'c3'" >msg.1-5-9 && { echo "Squashed commit of the following:" && echo && @@ -57,7 +57,7 @@ create_merge_msgs () { } >squash.1-5-9 && echo >msg.nolog && { - echo "* commit 'c3':" && + echo "* tag 'c3':" && echo " commit 3" && echo } >msg.log diff --git a/t/t7604-merge-custom-message.sh b/t/t7604-merge-custom-message.sh index 9114785ef..89619cf44 100755 --- a/t/t7604-merge-custom-message.sh +++ b/t/t7604-merge-custom-message.sh @@ -11,7 +11,7 @@ create_merge_msgs() { cp exp.subject exp.log && echo >>exp.log "" && - echo >>exp.log "* commit 'c2':" && + echo >>exp.log "* tag 'c2':" && echo >>exp.log " c2" } diff --git a/t/t7608-merge-messages.sh b/t/t7608-merge-messages.sh index 9225fa6f0..8e7e0a586 100755 --- a/t/t7608-merge-messages.sh +++ b/t/t7608-merge-messages.sh @@ -35,7 +35,7 @@ test_expect_success 'merge tag' ' git checkout master && test_commit master-3 && git merge tag-1 && - check_oneline "Merge commit Qtag-1Q" + check_oneline "Merge tag Qtag-1Q" ' test_expect_success 'ambiguous tag' ' @@ -44,7 +44,7 @@ test_expect_success 'ambiguous tag' ' git checkout master && test_commit master-4 && git merge ambiguous && - check_oneline "Merge commit QambiguousQ" + check_oneline "Merge tag QambiguousQ" ' test_expect_success 'remote-tracking branch' ' |