50 lines
1.0 KiB
Bash
Executable File
50 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='git rebase across mode change'
|
|
|
|
TEST_PASSES_SANITIZE_LEAK=true
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'setup' '
|
|
mkdir DS &&
|
|
>DS/whatever &&
|
|
git add DS &&
|
|
git commit -m base &&
|
|
|
|
git branch side1 &&
|
|
git branch side2 &&
|
|
|
|
git checkout side1 &&
|
|
git rm -rf DS &&
|
|
test_ln_s_add unrelated DS &&
|
|
git commit -m side1 &&
|
|
|
|
git checkout side2 &&
|
|
>unrelated &&
|
|
git add unrelated &&
|
|
git commit -m commit1 &&
|
|
|
|
echo >>unrelated &&
|
|
git commit -am commit2
|
|
'
|
|
|
|
test_expect_success 'rebase changes with the apply backend' '
|
|
test_when_finished "git rebase --abort || true" &&
|
|
git checkout -b apply-backend side2 &&
|
|
git rebase side1
|
|
'
|
|
|
|
test_expect_success 'rebase changes with the merge backend' '
|
|
test_when_finished "git rebase --abort || true" &&
|
|
git checkout -b merge-backend side2 &&
|
|
git rebase -m side1
|
|
'
|
|
|
|
test_expect_success 'rebase changes with the merge backend with a delay' '
|
|
test_when_finished "git rebase --abort || true" &&
|
|
git checkout -b merge-delay-backend side2 &&
|
|
git rebase -m --exec "sleep 1" side1
|
|
'
|
|
|
|
test_done
|