diff options
Diffstat (limited to 'third_party/git/t/t3033-merge-toplevel.sh')
-rwxr-xr-x | third_party/git/t/t3033-merge-toplevel.sh | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/third_party/git/t/t3033-merge-toplevel.sh b/third_party/git/t/t3033-merge-toplevel.sh deleted file mode 100755 index d31459942812..000000000000 --- a/third_party/git/t/t3033-merge-toplevel.sh +++ /dev/null @@ -1,152 +0,0 @@ -#!/bin/sh - -test_description='"git merge" top-level frontend' - -. ./test-lib.sh - -t3033_reset () { - git checkout -B master two && - git branch -f left three && - git branch -f right four -} - -test_expect_success setup ' - test_commit one && - git branch left && - git branch right && - test_commit two && - git checkout left && - test_commit three && - git checkout right && - test_commit four && - git checkout --orphan newroot && - test_commit five && - git checkout master -' - -# Local branches - -test_expect_success 'merge an octopus into void' ' - t3033_reset && - git checkout --orphan test && - git rm -fr . && - test_must_fail git merge left right && - test_must_fail git rev-parse --verify HEAD && - git diff --quiet && - test_must_fail git rev-parse HEAD -' - -test_expect_success 'merge an octopus, fast-forward (ff)' ' - t3033_reset && - git reset --hard one && - git merge left right && - # one is ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^3 && - git rev-parse HEAD^1 HEAD^2 | sort >actual && - git rev-parse three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge octopus, non-fast-forward (ff)' ' - t3033_reset && - git reset --hard one && - git merge --no-ff left right && - # one is ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse one three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge octopus, fast-forward (does not ff)' ' - t3033_reset && - git merge left right && - # two (master) is not an ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse two three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge octopus, non-fast-forward' ' - t3033_reset && - git merge --no-ff left right && - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse two three four | sort >expect && - test_cmp expect actual -' - -# The same set with FETCH_HEAD - -test_expect_success 'merge FETCH_HEAD octopus into void' ' - t3033_reset && - git checkout --orphan test && - git rm -fr . && - git fetch . left right && - test_must_fail git merge FETCH_HEAD && - test_must_fail git rev-parse --verify HEAD && - git diff --quiet && - test_must_fail git rev-parse HEAD -' - -test_expect_success 'merge FETCH_HEAD octopus fast-forward (ff)' ' - t3033_reset && - git reset --hard one && - git fetch . left right && - git merge FETCH_HEAD && - # one is ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^3 && - git rev-parse HEAD^1 HEAD^2 | sort >actual && - git rev-parse three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge FETCH_HEAD octopus non-fast-forward (ff)' ' - t3033_reset && - git reset --hard one && - git fetch . left right && - git merge --no-ff FETCH_HEAD && - # one is ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse one three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge FETCH_HEAD octopus fast-forward (does not ff)' ' - t3033_reset && - git fetch . left right && - git merge FETCH_HEAD && - # two (master) is not an ancestor of three (left) and four (right) - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse two three four | sort >expect && - test_cmp expect actual -' - -test_expect_success 'merge FETCH_HEAD octopus non-fast-forward' ' - t3033_reset && - git fetch . left right && - git merge --no-ff FETCH_HEAD && - test_must_fail git rev-parse --verify HEAD^4 && - git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && - git rev-parse two three four | sort >expect && - test_cmp expect actual -' - -# two-project merge -test_expect_success 'refuse two-project merge by default' ' - t3033_reset && - git reset --hard four && - test_must_fail git merge five -' - -test_expect_success 'two-project merge with --allow-unrelated-histories' ' - t3033_reset && - git reset --hard four && - git merge --allow-unrelated-histories five && - git diff --exit-code five -' - -test_done |