Merge branch 'jk/maint-1.6.3-checkout-unborn' into maint

* jk/maint-1.6.3-checkout-unborn:
  checkout: do not imply "-f" on unborn branches
This commit is contained in:
Junio C Hamano
2009-09-16 14:26:56 -07:00
2 changed files with 43 additions and 9 deletions

40
t/t2015-checkout-unborn.sh Executable file
View File

@ -0,0 +1,40 @@
#!/bin/sh
test_description='checkout from unborn branch protects contents'
. ./test-lib.sh
test_expect_success 'setup' '
mkdir parent &&
(cd parent &&
git init &&
echo content >file &&
git add file &&
git commit -m base
) &&
git fetch parent master:origin
'
test_expect_success 'checkout from unborn preserves untracked files' '
echo precious >expect &&
echo precious >file &&
test_must_fail git checkout -b new origin &&
test_cmp expect file
'
test_expect_success 'checkout from unborn preserves index contents' '
echo precious >expect &&
echo precious >file &&
git add file &&
test_must_fail git checkout -b new origin &&
test_cmp expect file &&
git show :file >file &&
test_cmp expect file
'
test_expect_success 'checkout from unborn merges identical index contents' '
echo content >file &&
git add file &&
git checkout -b new origin
'
test_done