]>
Commit | Line | Data |
---|---|---|
f5ed3b30 JH |
1 | #!/bin/sh |
2 | ||
3 | test_description='reset --hard unmerged' | |
4 | ||
5 | . ./test-lib.sh | |
6 | ||
7 | test_expect_success setup ' | |
8 | ||
9 | mkdir before later && | |
10 | >before/1 && | |
11 | >before/2 && | |
12 | >hello && | |
13 | >later/3 && | |
14 | git add before hello later && | |
15 | git commit -m world && | |
16 | ||
17 | H=$(git rev-parse :hello) && | |
18 | git rm --cached hello && | |
19 | echo "100644 $H 2 hello" | git update-index --index-info && | |
20 | ||
21 | rm -f hello && | |
22 | mkdir -p hello && | |
23 | >hello/world && | |
24 | test "$(git ls-files -o)" = hello/world | |
25 | ||
26 | ' | |
27 | ||
28 | test_expect_success 'reset --hard should restore unmerged ones' ' | |
29 | ||
30 | git reset --hard && | |
31 | git ls-files --error-unmatch before/1 before/2 hello later/3 && | |
32 | test -f hello | |
33 | ||
34 | ' | |
35 | ||
235e8d59 | 36 | test_expect_success 'reset --hard did not corrupt index or cached-tree' ' |
f5ed3b30 JH |
37 | |
38 | T=$(git write-tree) && | |
39 | rm -f .git/index && | |
40 | git add before hello later && | |
41 | U=$(git write-tree) && | |
42 | test "$T" = "$U" | |
43 | ||
44 | ' | |
45 | ||
46 | test_done |