diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-07-15 10:35:43 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-07-15 10:35:43 -0700 |
commit | d2db8f78c469f4b346a048b5deed7c6fdd4b8d05 (patch) | |
tree | 62ec3225da5092e637353ada32cc43744d66dd97 /t | |
parent | 1f101bf6507bdc786666beac6d9a7480066a020f (diff) | |
parent | b4dc085a8dc2ec2fb5f6366fa672222b807ed655 (diff) | |
download | git-d2db8f78c469f4b346a048b5deed7c6fdd4b8d05.tar.gz |
Merge branch 'jk/pull-into-dirty-unborn' into maint
"git pull" into nothing trashed "local changes" that were in the
index.
* 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')
-rwxr-xr-x | t/t5520-pull.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh index 6af6c63350..ed4d9c8318 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 && |