diff options
author | Elijah Newren <newren@gmail.com> | 2021-09-10 10:29:55 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-09-10 15:46:34 -0700 |
commit | 3d40e3723b1bc86d22136ff01b0787809a3267a4 (patch) | |
tree | 23fd8b711d79e7598525e2f5ce8f9fc49b6c629e /t | |
parent | t3903: document a pair of directory/file bugs (diff) | |
download | tgif-3d40e3723b1bc86d22136ff01b0787809a3267a4.tar.xz |
stash: avoid feeding directories to update-index
When a file is removed from the cache, but there is a file of the same
name present in the working directory, we would normally treat that file
in the working directory as untracked. However, in the case of stash,
doing that would prevent a simple 'git stash push', because the untracked
file would be in the way of restoring the deleted file.
git stash, however, blindly assumes that whatever is in the working
directory for a deleted file is wanted and passes that path along to
update-index. That causes problems when the working directory contains
a directory with the same name as the deleted file. Add some code for
this special case that will avoid passing directory names to
update-index.
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-x | t/t3903-stash.sh | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh index 7346f8d103..34d1ad9837 100755 --- a/t/t3903-stash.sh +++ b/t/t3903-stash.sh @@ -1307,7 +1307,7 @@ test_expect_success 'stash -c stash.useBuiltin=false warning ' ' test_must_be_empty err ' -test_expect_failure 'git stash succeeds despite directory/file change' ' +test_expect_success 'git stash succeeds despite directory/file change' ' test_create_repo directory_file_switch_v1 && ( cd directory_file_switch_v1 && |