summaryrefslogtreecommitdiff
path: root/t/t5520-pull.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-06-27 21:29:52 (GMT)
committerJunio C Hamano <gitster@pobox.com>2013-06-27 21:29:52 (GMT)
commit833cd7fc9fed8568a3612e9b1b204290b0f0e15d (patch)
treeca145ec8b6e1b0376504a4faa8f6f2bafdfcedeb /t/t5520-pull.sh
parentdc2ed04c23e59bf2ea93021fdb3660d7ded1f46c (diff)
parentb4dc085a8dc2ec2fb5f6366fa672222b807ed655 (diff)
downloadgit-833cd7fc9fed8568a3612e9b1b204290b0f0e15d.zip
git-833cd7fc9fed8568a3612e9b1b204290b0f0e15d.tar.gz
git-833cd7fc9fed8568a3612e9b1b204290b0f0e15d.tar.bz2
Merge branch 'jk/pull-into-dirty-unborn'
"git pull" into nothing trashed "local changes" that were in the index, and this avoids it. * jk/pull-into-dirty-unborn: pull: merge into unborn by fast-forwarding from empty tree pull: update unborn branch tip after index
Diffstat (limited to 't/t5520-pull.sh')
-rwxr-xr-xt/t5520-pull.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh
index 6af6c63..ed4d9c8 100755
--- a/t/t5520-pull.sh
+++ b/t/t5520-pull.sh
@@ -57,6 +57,35 @@ test_expect_success 'pulling into void does not overwrite untracked files' '
)
'
+test_expect_success 'pulling into void does not overwrite staged files' '
+ git init cloned-staged-colliding &&
+ (
+ cd cloned-staged-colliding &&
+ echo "alternate content" >file &&
+ git add file &&
+ test_must_fail git pull .. master &&
+ echo "alternate content" >expect &&
+ test_cmp expect file &&
+ git cat-file blob :file >file.index &&
+ test_cmp expect file.index
+ )
+'
+
+
+test_expect_success 'pulling into void does not remove new staged files' '
+ git init cloned-staged-new &&
+ (
+ cd cloned-staged-new &&
+ echo "new tracked file" >newfile &&
+ git add newfile &&
+ git pull .. master &&
+ echo "new tracked file" >expect &&
+ test_cmp expect newfile &&
+ git cat-file blob :newfile >newfile.index &&
+ test_cmp expect newfile.index
+ )
+'
+
test_expect_success 'test . as a remote' '
git branch copy master &&