| #!/bin/sh | 
 |  | 
 | test_description='git merge | 
 |  | 
 | Testing merge when using a custom message for the merge commit.' | 
 |  | 
 | . ./test-lib.sh | 
 |  | 
 | create_merge_msgs() { | 
 | 	echo >exp.subject "custom message" | 
 |  | 
 | 	cp exp.subject exp.log && | 
 | 	echo >>exp.log "" && | 
 | 	echo >>exp.log "* tag 'c2':" && | 
 | 	echo >>exp.log "  c2" | 
 | } | 
 |  | 
 | 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 && | 
 | 	git tag c2 && | 
 | 	create_merge_msgs | 
 | ' | 
 |  | 
 |  | 
 | test_expect_success 'merge c2 with a custom message' ' | 
 | 	git reset --hard c1 && | 
 | 	git merge -m "$(cat exp.subject)" c2 && | 
 | 	git cat-file commit HEAD | sed -e "1,/^$/d" >actual && | 
 | 	test_cmp exp.subject actual | 
 | ' | 
 |  | 
 | test_expect_success 'merge --log appends to custom message' ' | 
 | 	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 | 
 | ' | 
 |  | 
 | test_done |