2008-06-28 00:22:07 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
2008-09-03 16:59:33 +08:00
|
|
|
test_description='git merge
|
2008-06-28 00:22:07 +08:00
|
|
|
|
|
|
|
Testing merge when using a custom message for the merge commit.'
|
|
|
|
|
|
|
|
. ./test-lib.sh
|
|
|
|
|
2010-05-11 01:17:45 +08:00
|
|
|
create_merge_msgs() {
|
|
|
|
echo >exp.subject "custom message"
|
2010-05-11 01:17:46 +08:00
|
|
|
|
|
|
|
cp exp.subject exp.log &&
|
|
|
|
echo >>exp.log "" &&
|
2011-11-05 12:31:28 +08:00
|
|
|
echo >>exp.log "* tag 'c2':" &&
|
2010-05-11 01:17:46 +08:00
|
|
|
echo >>exp.log " c2"
|
2010-05-11 01:17:45 +08:00
|
|
|
}
|
|
|
|
|
2008-06-28 00:22:07 +08:00
|
|
|
test_expect_success 'setup' '
|
|
|
|
echo c0 > c0.c &&
|
|
|
|
git add c0.c &&
|
|
|
|
git commit -m c0 &&
|
|
|
|
git tag c0 &&
|
|
|
|
echo c1 > c1.c &&
|
|
|
|
git add c1.c &&
|
|
|
|
git commit -m c1 &&
|
|
|
|
git tag c1 &&
|
|
|
|
git reset --hard c0 &&
|
|
|
|
echo c2 > c2.c &&
|
|
|
|
git add c2.c &&
|
|
|
|
git commit -m c2 &&
|
2010-05-11 01:17:45 +08:00
|
|
|
git tag c2 &&
|
|
|
|
create_merge_msgs
|
2008-06-28 00:22:07 +08:00
|
|
|
'
|
|
|
|
|
|
|
|
|
|
|
|
test_expect_success 'merge c2 with a custom message' '
|
|
|
|
git reset --hard c1 &&
|
2010-05-11 01:17:45 +08:00
|
|
|
git merge -m "$(cat exp.subject)" c2 &&
|
2009-12-03 02:00:58 +08:00
|
|
|
git cat-file commit HEAD | sed -e "1,/^$/d" >actual &&
|
2010-05-11 01:17:45 +08:00
|
|
|
test_cmp exp.subject actual
|
2008-06-28 00:22:07 +08:00
|
|
|
'
|
|
|
|
|
2010-05-11 01:17:52 +08:00
|
|
|
test_expect_success 'merge --log appends to custom message' '
|
2010-05-11 01:17:46 +08:00
|
|
|
git reset --hard c1 &&
|
|
|
|
git merge --log -m "$(cat exp.subject)" c2 &&
|
|
|
|
git cat-file commit HEAD | sed -e "1,/^$/d" >actual &&
|
|
|
|
test_cmp exp.log actual
|
|
|
|
'
|
|
|
|
|
2008-06-28 00:22:07 +08:00
|
|
|
test_done
|