summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Paul Tan <pyokagan@gmail.com>2015-05-29 19:44:43 +0800
committerLibravatar Junio C Hamano <gitster@pobox.com>2015-05-29 09:15:35 -0700
commitfa14ee77ac7b0e4d16ede822015cad32f34b6c7f (patch)
tree7f7bf2cc131b1621f6d4f9d73bd557a7715d6893
parentt5520: test --rebase with multiple branches (diff)
downloadtgif-fa14ee77ac7b0e4d16ede822015cad32f34b6c7f.tar.xz
t5520: test --rebase failure on unborn branch with index
Commit 19a7fcb (allow pull --rebase on branch yet to be born, 2009-08-11) special cases git-pull on an unborn branch in a different code path such that git-pull --rebase is still valid even though there is no HEAD yet. This code path still ensures that there is no index in order not to lose any staged changes. Implement a test to ensure that this check is triggered. Signed-off-by: Paul Tan <pyokagan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xt/t5520-pull.sh15
1 files changed, 15 insertions, 0 deletions
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh
index 90728e0094..a04f55c40a 100755
--- a/t/t5520-pull.sh
+++ b/t/t5520-pull.sh
@@ -412,6 +412,21 @@ test_expect_success 'pull --rebase works on branch yet to be born' '
test_cmp expect actual
'
+test_expect_success 'pull --rebase fails on unborn branch with staged changes' '
+ test_when_finished "rm -rf empty_repo2" &&
+ git init empty_repo2 &&
+ (
+ cd empty_repo2 &&
+ echo staged-file >staged-file &&
+ git add staged-file &&
+ test "$(git ls-files)" = staged-file &&
+ test_must_fail git pull --rebase .. master 2>err &&
+ test "$(git ls-files)" = staged-file &&
+ test "$(git show :staged-file)" = staged-file &&
+ test_i18ngrep "unborn branch with changes added to the index" err
+ )
+'
+
test_expect_success 'setup for detecting upstreamed changes' '
mkdir src &&
(cd src &&