Browse Source
When "sym" is a symbolic link that is inside the working tree, and it points at a directory "dir" that has "path" in it, "update-index --add sym/path" used to mistakenly add "sym/path" as if "sym" were a normal directory. "git apply", "git diff" and "git merge" have been taught about this issue some time ago, but "update-index" and "add" have been left ignorant for too long. Signed-off-by: Junio C Hamano <gitster@pobox.com>maint

2 changed files with 24 additions and 1 deletions
@ -0,0 +1,20 @@
@@ -0,0 +1,20 @@
|
||||
#!/bin/sh |
||||
|
||||
test_description='update-index refuses to add beyond symlinks' |
||||
|
||||
. ./test-lib.sh |
||||
|
||||
test_expect_success setup ' |
||||
>a && |
||||
mkdir b && |
||||
ln -s b c && |
||||
>c/d && |
||||
git update-index --add a b/d |
||||
' |
||||
|
||||
test_expect_success 'update-index --add beyond symlinks' ' |
||||
test_must_fail git update-index --add c/d && |
||||
! ( git ls-files | grep c/d ) |
||||
' |
||||
|
||||
test_done |
Loading…
Reference in new issue