git/t/t7608-merge-messages.sh
Junio C Hamano 21531927e4 Revert "fmt-merge-msg: stop treating master specially"
This reverts commit 489947cee5, which
stopped treating merges into the 'master' branch as special when
preparing the default merge message.  As the goal was not to have
any single branch designated as special, it solved it by leaving the
"into <branchname>" at the end of the title of the default merge
message for any and all branches.  An obvious and easy alternative
to treat everybody equally could have been to remove it for every
branch, but that involves loss of information.

We'll introduce a new mechanism to let end-users specify merges into
which branches would omit the "into <branchname>" from the title of
the default merge message, and make the mechanism, when unconfigured,
treat the traditional 'master' special again, so all the changes to
the tests we made earlier will become unnecessary, as these tests
will be run without configuring the said new mechanism.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2020-07-30 12:41:49 -07:00

61 lines
1.4 KiB
Bash
Executable File

#!/bin/sh
test_description='test auto-generated merge messages'
. ./test-lib.sh
check_oneline() {
echo "$1" | sed "s/Q/'/g" >expect &&
git log -1 --pretty=tformat:%s >actual &&
test_cmp expect actual
}
test_expect_success 'merge local branch' '
test_commit master-1 &&
git checkout -b local-branch &&
test_commit branch-1 &&
git checkout master &&
test_commit master-2 &&
git merge local-branch &&
check_oneline "Merge branch Qlocal-branchQ"
'
test_expect_success 'merge octopus branches' '
git checkout -b octopus-a master &&
test_commit octopus-1 &&
git checkout -b octopus-b master &&
test_commit octopus-2 &&
git checkout master &&
git merge octopus-a octopus-b &&
check_oneline "Merge branches Qoctopus-aQ and Qoctopus-bQ"
'
test_expect_success 'merge tag' '
git checkout -b tag-branch master &&
test_commit tag-1 &&
git checkout master &&
test_commit master-3 &&
git merge tag-1 &&
check_oneline "Merge tag Qtag-1Q"
'
test_expect_success 'ambiguous tag' '
git checkout -b ambiguous master &&
test_commit ambiguous &&
git checkout master &&
test_commit master-4 &&
git merge ambiguous &&
check_oneline "Merge tag QambiguousQ"
'
test_expect_success 'remote-tracking branch' '
git checkout -b remote master &&
test_commit remote-1 &&
git update-ref refs/remotes/origin/master remote &&
git checkout master &&
test_commit master-5 &&
git merge origin/master &&
check_oneline "Merge remote-tracking branch Qorigin/masterQ"
'
test_done