summaryrefslogtreecommitdiff
path: root/t/t1000-read-tree-m-3way.sh
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-06-11 09:53:57 (GMT)
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-13 03:40:20 (GMT)
commit036d51cc557bcf919246ad30cb2ac7736bfc836b (patch)
tree0691823355c5aa9b395fab377e11582808d38687 /t/t1000-read-tree-m-3way.sh
parent32192e6622d78347448cfc0572827d6e64e0de28 (diff)
downloadgit-036d51cc557bcf919246ad30cb2ac7736bfc836b.zip
git-036d51cc557bcf919246ad30cb2ac7736bfc836b.tar.gz
git-036d51cc557bcf919246ad30cb2ac7736bfc836b.tar.bz2
[PATCH] read-tree: loosen too strict index requirements
This patch teaches read-tree 3-way merge that, when only "the other tree" changed a path, and if the index file already has the same change, we are not in a situation that would clobber the index and the work tree, and lets the merge succeed; this is case #14ALT in t1000 test. It does not change the result of the merge, but prevents it from failing when it does not have to. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 't/t1000-read-tree-m-3way.sh')
-rwxr-xr-xt/t1000-read-tree-m-3way.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/t/t1000-read-tree-m-3way.sh b/t/t1000-read-tree-m-3way.sh
index 3d9b3ac..89f0e81 100755
--- a/t/t1000-read-tree-m-3way.sh
+++ b/t/t1000-read-tree-m-3way.sh
@@ -464,6 +464,15 @@ test_expect_success \
git-read-tree -m $tree_O $tree_A $tree_B &&
check_result"
+test_expect_success \
+ '14 - may match B in O && A && B && O==A && O!=B case' \
+ "rm -f .git/index NM &&
+ cp .orig-B/NM NM &&
+ git-update-cache --add NM &&
+ echo extra >>NM &&
+ git-read-tree -m $tree_O $tree_A $tree_B &&
+ check_result"
+
test_expect_failure \
'14 (fail) - must match and be up-to-date in O && A && B && O==A && O!=B case' \
"rm -f .git/index NM &&