diff options
author | Junio C Hamano <gitster@pobox.com> | 2014-12-05 11:41:33 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-12-05 11:41:33 -0800 |
commit | c21df07886bb07a893609ff242e29b1493da1fd8 (patch) | |
tree | 7f76a3cc617ee737aac3dbd1e0fc7ad3c3347b68 /t | |
parent | Merge branch 'tq/git-ssh-command' (diff) | |
parent | checkout $tree: do not throw away unchanged index entries (diff) | |
download | tgif-c21df07886bb07a893609ff242e29b1493da1fd8.tar.xz |
Merge branch 'jk/checkout-from-tree'
"git checkout $treeish $path", when $path in the index and the
working tree already matched what is in $treeish at the $path,
still overwrote the $path unnecessarily.
* jk/checkout-from-tree:
checkout $tree: do not throw away unchanged index entries
Diffstat (limited to 't')
-rwxr-xr-x | t/t2022-checkout-paths.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/t/t2022-checkout-paths.sh b/t/t2022-checkout-paths.sh index 8e3545d868..f46d0499bc 100755 --- a/t/t2022-checkout-paths.sh +++ b/t/t2022-checkout-paths.sh @@ -61,4 +61,21 @@ test_expect_success 'do not touch unmerged entries matching $path but not in $tr test_cmp expect.next0 actual.next0 ' +test_expect_success 'do not touch files that are already up-to-date' ' + git reset --hard && + echo one >file1 && + echo two >file2 && + git add file1 file2 && + git commit -m base && + echo modified >file1 && + test-chmtime =1000000000 file2 && + git update-index -q --refresh && + git checkout HEAD -- file1 file2 && + echo one >expect && + test_cmp expect file1 && + echo "1000000000 file2" >expect && + test-chmtime -v +0 file2 >actual && + test_cmp expect actual +' + test_done |