]> asedeno.scripts.mit.edu Git - git.git/commitdiff
Merge branch 'ic/maint-rebase-i-abort' into maint
authorJunio C Hamano <gitster@pobox.com>
Tue, 22 Jun 2010 16:31:48 +0000 (09:31 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 22 Jun 2010 16:31:48 +0000 (09:31 -0700)
* ic/maint-rebase-i-abort:
  rebase -i: Abort cleanly if new base cannot be checked out

1  2 
t/t3404-rebase-interactive.sh

index 6668907ec5c5ba196c39fd9a2097050d92ccbe57,8d409156d24a11355c2fa124989527b69a683c53..ee9a1b25e6a35adcb2350068d3b63b50bc9c24b3
@@@ -146,6 -146,16 +146,16 @@@ test_expect_success 'abort' 
        ! test -d .git/rebase-merge
  '
  
+ test_expect_success 'abort with error when new base cannot be checked out' '
+       git rm --cached file1 &&
+       git commit -m "remove file in base" &&
+       test_must_fail git rebase -i master > output 2>&1 &&
+       grep "Untracked working tree file .file1. would be overwritten" \
+               output &&
+       ! test -d .git/rebase-merge &&
+       git reset --hard HEAD^
+ '
  test_expect_success 'retain authorship' '
        echo A > file7 &&
        git add file7 &&
@@@ -181,12 -191,6 +191,12 @@@ test_expect_success '-p handles "no cha
        test $HEAD = $(git rev-parse HEAD)
  '
  
 +test_expect_failure 'exchange two commits with -p' '
 +      FAKE_LINES="2 1" git rebase -i -p HEAD~2 &&
 +      test H = $(git cat-file commit HEAD^ | sed -ne \$p) &&
 +      test G = $(git cat-file commit HEAD | sed -ne \$p)
 +'
 +
  test_expect_success 'preserve merges with -p' '
        git checkout -b to-be-preserved master^ &&
        : > unrelated-file &&