about summary refs log tree commit diff
path: root/third_party/git/t/t2030-unresolve-info.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/t2030-unresolve-info.sh')
-rwxr-xr-xthird_party/git/t/t2030-unresolve-info.sh195
1 files changed, 0 insertions, 195 deletions
diff --git a/third_party/git/t/t2030-unresolve-info.sh b/third_party/git/t/t2030-unresolve-info.sh
deleted file mode 100755
index 309199bca2..0000000000
--- a/third_party/git/t/t2030-unresolve-info.sh
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/bin/sh
-
-test_description='undoing resolution'
-
-. ./test-lib.sh
-
-check_resolve_undo () {
-	msg=$1
-	shift
-	while case $# in
-	0)	break ;;
-	1|2|3)	die "Bug in check-resolve-undo test" ;;
-	esac
-	do
-		path=$1
-		shift
-		for stage in 1 2 3
-		do
-			sha1=$1
-			shift
-			case "$sha1" in
-			'') continue ;;
-			esac
-			sha1=$(git rev-parse --verify "$sha1")
-			printf "100644 %s %s\t%s\n" $sha1 $stage $path
-		done
-	done >"$msg.expect" &&
-	git ls-files --resolve-undo >"$msg.actual" &&
-	test_cmp "$msg.expect" "$msg.actual"
-}
-
-prime_resolve_undo () {
-	git reset --hard &&
-	git checkout second^0 &&
-	test_tick &&
-	test_must_fail git merge third^0 &&
-	echo merge does not leave anything &&
-	check_resolve_undo empty &&
-	echo different >fi/le &&
-	git add fi/le &&
-	echo resolving records &&
-	check_resolve_undo recorded fi/le initial:fi/le second:fi/le third:fi/le
-}
-
-test_expect_success setup '
-	mkdir fi &&
-	printf "a\0a" >binary &&
-	git add binary &&
-	test_commit initial fi/le first &&
-	git branch side &&
-	git branch another &&
-	printf "a\0b" >binary &&
-	git add binary &&
-	test_commit second fi/le second &&
-	git checkout side &&
-	test_commit third fi/le third &&
-	git branch add-add &&
-	git checkout another &&
-	test_commit fourth fi/le fourth &&
-	git checkout add-add &&
-	test_commit fifth add-differently &&
-	git checkout master
-'
-
-test_expect_success 'add records switch clears' '
-	prime_resolve_undo &&
-	test_tick &&
-	git commit -m merged &&
-	echo committing keeps &&
-	check_resolve_undo kept fi/le initial:fi/le second:fi/le third:fi/le &&
-	git checkout second^0 &&
-	echo switching clears &&
-	check_resolve_undo cleared
-'
-
-test_expect_success 'rm records reset clears' '
-	prime_resolve_undo &&
-	test_tick &&
-	git commit -m merged &&
-	echo committing keeps &&
-	check_resolve_undo kept fi/le initial:fi/le second:fi/le third:fi/le &&
-
-	echo merge clears upfront &&
-	test_must_fail git merge fourth^0 &&
-	check_resolve_undo nuked &&
-
-	git rm -f fi/le &&
-	echo resolving records &&
-	check_resolve_undo recorded fi/le initial:fi/le HEAD:fi/le fourth:fi/le &&
-
-	git reset --hard &&
-	echo resetting discards &&
-	check_resolve_undo discarded
-'
-
-test_expect_success 'plumbing clears' '
-	prime_resolve_undo &&
-	test_tick &&
-	git commit -m merged &&
-	echo committing keeps &&
-	check_resolve_undo kept fi/le initial:fi/le second:fi/le third:fi/le &&
-
-	echo plumbing clear &&
-	git update-index --clear-resolve-undo &&
-	check_resolve_undo cleared
-'
-
-test_expect_success 'add records checkout -m undoes' '
-	prime_resolve_undo &&
-	git diff HEAD &&
-	git checkout --conflict=merge fi/le &&
-	echo checkout used the record and removed it &&
-	check_resolve_undo removed &&
-	echo the index and the work tree is unmerged again &&
-	git diff >actual &&
-	grep "^++<<<<<<<" actual
-'
-
-test_expect_success 'unmerge with plumbing' '
-	prime_resolve_undo &&
-	git update-index --unresolve fi/le &&
-	git ls-files -u >actual &&
-	test_line_count = 3 actual
-'
-
-test_expect_success 'rerere and rerere forget' '
-	mkdir .git/rr-cache &&
-	prime_resolve_undo &&
-	echo record the resolution &&
-	git rerere &&
-	rerere_id=$(cd .git/rr-cache && echo */postimage) &&
-	rerere_id=${rerere_id%/postimage} &&
-	test -f .git/rr-cache/$rerere_id/postimage &&
-	git checkout -m fi/le &&
-	echo resurrect the conflict &&
-	grep "^=======" fi/le &&
-	echo reresolve the conflict &&
-	git rerere &&
-	test "z$(cat fi/le)" = zdifferent &&
-	echo register the resolution again &&
-	git add fi/le &&
-	check_resolve_undo kept fi/le initial:fi/le second:fi/le third:fi/le &&
-	test -z "$(git ls-files -u)" &&
-	git rerere forget fi/le &&
-	! test -f .git/rr-cache/$rerere_id/postimage &&
-	tr "\0" "\n" <.git/MERGE_RR >actual &&
-	echo "$rerere_id	fi/le" >expect &&
-	test_cmp expect actual
-'
-
-test_expect_success 'rerere and rerere forget (subdirectory)' '
-	rm -fr .git/rr-cache &&
-	mkdir .git/rr-cache &&
-	prime_resolve_undo &&
-	echo record the resolution &&
-	(cd fi && git rerere) &&
-	rerere_id=$(cd .git/rr-cache && echo */postimage) &&
-	rerere_id=${rerere_id%/postimage} &&
-	test -f .git/rr-cache/$rerere_id/postimage &&
-	(cd fi && git checkout -m le) &&
-	echo resurrect the conflict &&
-	grep "^=======" fi/le &&
-	echo reresolve the conflict &&
-	(cd fi && git rerere) &&
-	test "z$(cat fi/le)" = zdifferent &&
-	echo register the resolution again &&
-	(cd fi && git add le) &&
-	check_resolve_undo kept fi/le initial:fi/le second:fi/le third:fi/le &&
-	test -z "$(git ls-files -u)" &&
-	(cd fi && git rerere forget le) &&
-	! test -f .git/rr-cache/$rerere_id/postimage &&
-	tr "\0" "\n" <.git/MERGE_RR >actual &&
-	echo "$rerere_id	fi/le" >expect &&
-	test_cmp expect actual
-'
-
-test_expect_success 'rerere forget (binary)' '
-	git checkout -f side &&
-	printf "a\0c" >binary &&
-	git commit -a -m binary &&
-	test_must_fail git merge second &&
-	git rerere forget binary
-'
-
-test_expect_success 'rerere forget (add-add conflict)' '
-	git checkout -f master &&
-	echo master >add-differently &&
-	git add add-differently &&
-	git commit -m "add differently" &&
-	test_must_fail git merge fifth &&
-	git rerere forget add-differently 2>actual &&
-	test_i18ngrep "no remembered" actual
-'
-
-test_done