builtin-help: always load_command_list() in cmd_help()
[git/jrn.git] / t / t7606-merge-custom.sh
blob07e0fc797453380cbb10b3e56c73397711a3f794
1 #!/bin/sh
3 test_description='git-merge
5 Testing a custom strategy.'
7 . ./test-lib.sh
9 cat >git-merge-theirs <<EOF
10 #!$SHELL_PATH
11 eval git read-tree --reset -u \\\$\$#
12 EOF
13 chmod +x git-merge-theirs
14 PATH=.:$PATH
15 export PATH
17 test_expect_success 'setup' '
18 echo c0 >c0.c &&
19 git add c0.c &&
20 git commit -m c0 &&
21 git tag c0 &&
22 echo c1 >c1.c &&
23 git add c1.c &&
24 git commit -m c1 &&
25 git tag c1 &&
26 git reset --hard c0 &&
27 echo c2 >c2.c &&
28 git add c2.c &&
29 git commit -m c2 &&
30 git tag c2
33 test_expect_success 'merge c2 with a custom strategy' '
34 git reset --hard c1 &&
35 git merge -s theirs c2 &&
36 test "$(git rev-parse c1)" != "$(git rev-parse HEAD)" &&
37 test "$(git rev-parse c1)" = "$(git rev-parse HEAD^1)" &&
38 test "$(git rev-parse c2)" = "$(git rev-parse HEAD^2)" &&
39 test "$(git rev-parse c2^{tree})" = "$(git rev-parse HEAD^{tree})" &&
40 git diff --exit-code &&
41 test -f c0.c &&
42 test ! -f c1.c &&
43 test -f c2.c
46 test_done