Signed-off-by: Nguyễn Thái Ngọc Duy
---
Looks like a good thing to do.. Three files with the same "-reset.sh"
suffix could be confusing.
t/t7101-reset-empty-subdirs.sh (new +x) | 63 +
t/t7101-reset.sh (gone) | 63 -
t/t7104-reset-hard.sh (new +x) | 46
t/t7104-reset.sh (gone) | 46
4 files changed, 109 insertions(+), 109 deletions(-)
create mode 100755 t/t7101-reset-empty-subdirs.sh
delete mode 100755 t/t7101-reset.sh
create mode 100755 t/t7104-reset-hard.sh
delete mode 100755 t/t7104-reset.sh
diff --git a/t/t7101-reset-empty-subdirs.sh b/t/t7101-reset-empty-subdirs.sh
new file mode 100755
index 000..96e163f
--- /dev/null
+++ b/t/t7101-reset-empty-subdirs.sh
@@ -0,0 +1,63 @@
+#!/bin/sh
+#
+# Copyright (c) 2006 Shawn Pearce
+#
+
+test_description='git reset should cull empty subdirs'
+. ./test-lib.sh
+
+test_expect_success \
+'creating initial files' \
+'mkdir path0 &&
+ cp "$TEST_DIRECTORY"/../COPYING path0/COPYING &&
+ git add path0/COPYING &&
+ git commit -m add -a'
+
+test_expect_success \
+'creating second files' \
+'mkdir path1 &&
+ mkdir path1/path2 &&
+ cp "$TEST_DIRECTORY"/../COPYING path1/path2/COPYING &&
+ cp "$TEST_DIRECTORY"/../COPYING path1/COPYING &&
+ cp "$TEST_DIRECTORY"/../COPYING COPYING &&
+ cp "$TEST_DIRECTORY"/../COPYING path0/COPYING-TOO &&
+ git add path1/path2/COPYING &&
+ git add path1/COPYING &&
+ git add COPYING &&
+ git add path0/COPYING-TOO &&
+ git commit -m change -a'
+
+test_expect_success \
+'resetting tree HEAD^' \
+'git reset --hard HEAD^'
+
+test_expect_success \
+'checking initial files exist after rewind' \
+'test -d path0 &&
+ test -f path0/COPYING'
+
+test_expect_success \
+'checking lack of path1/path2/COPYING' \
+'! test -f path1/path2/COPYING'
+
+test_expect_success \
+'checking lack of path1/COPYING' \
+'! test -f path1/COPYING'
+
+test_expect_success \
+'checking lack of COPYING' \
+'! test -f COPYING'
+
+test_expect_success \
+'checking checking lack of path1/COPYING-TOO' \
+'! test -f path0/COPYING-TOO'
+
+test_expect_success \
+'checking lack of path1/path2' \
+'! test -d path1/path2'
+
+test_expect_success \
+'checking lack of path1' \
+'! test -d path1'
+
+test_done
diff --git a/t/t7101-reset.sh b/t/t7101-reset.sh
deleted file mode 100755
index 96e163f..000
--- a/t/t7101-reset.sh
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-#
-# Copyright (c) 2006 Shawn Pearce
-#
-
-test_description='git reset should cull empty subdirs'
-. ./test-lib.sh
-
-test_expect_success \
-'creating initial files' \
-'mkdir path0 &&
- cp "$TEST_DIRECTORY"/../COPYING path0/COPYING &&
- git add path0/COPYING &&
- git commit -m add -a'
-
-test_expect_success \
-'creating second files' \
-'mkdir path1 &&
- mkdir path1/path2 &&
- cp "$TEST_DIRECTORY"/../COPYING path1/path2/COPYING &&
- cp "$TEST_DIRECTORY"/../COPYING path1/COPYING &&
- cp "$TEST_DIRECTORY"/../COPYING COPYING &&
- cp "$TEST_DIRECTORY"/../COPYING path0/COPYING-TOO &&
- git add path1/path2/COPYING &&
- git add path1/COPYING &&
- git add COPYING &&
- git add path0/COPYING-TOO &&
- git commit -m change -a'
-
-test_expect_success \
-'resetting tree HEAD^' \
-'git reset --hard HEAD^'
-
-test_expect_success \
-'checking initial files exist after rewind' \
-'test -d path0 &&
- test -f path0/COPYING'
-
-test_expect_success \
-'checking lack of path1/path2/COPYING' \
-'! test -f path1/path2/COPYING'
-
-test_expect_success \
-'checking lack of path1/COPYING' \
-'! test -f path1/COPYING'
-
-test_expect_success \
-'checking lack of COPYING' \
-'! test -f COPYING'
-
-test_expect_success \
-'checking checking lack of path1/COPYING-TOO' \
-'! test -f path0/COPYING-TOO'
-
-test_expect_success \
-'checking lack of path1/path2' \
-'! test -d path1/path2'
-
-test_expect_success \
-'checking lack of path1' \
-'! test -d path1'
-
-test_done
diff --git a/t/t7104-reset-hard.sh b/t/t7104-reset-hard.sh
new file mode 100755
index 000..f136ee7
--- /dev/null
+++ b/t/t7104-reset-hard.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+test_description='reset --hard unmerged'
+
+. ./test-lib.sh
+
+test_expect_success setup '
+
+ mkdir before later &&
+ >before/1 &&
+ >before/2 &&
+ >hello &&
+ >later/3 &&
+ git add before hello later &&
+ git commit -m world &&
+
+ H=$(git rev-parse :hello) &&
+ git rm --cached hello &&
+ echo "100644 $H 2 hello" | git update-index --index-info &&
+
+ rm -f hello &&
+ mkdir -p hello &&
+ >hello/world &&
+ test "$(git ls-files -o)" = hello/world
+
+'
+
+test_expect_success 'reset --hard should restore unmerged o