From: Nguyễn Thái Ngọc Duy Date: Mon, 02 May 2011 12:47:42 GMT Subject: [PATCH 1/3] t3700: note a .gitignore matching fault Message-ID: <1304340464-14829-1-git-send-email-pclouds@gmail.com> .gitignore support both positive and negative patterns. One may negate the other. Current code works well if both patterns target files in the same directory. When a pattern targets a directory and an opposite pattern targets some files/directories within that directory, we need to descend in the directory until we're clear which ones are matched and which are not. excluded_from_list() (or its callers) fails to handle this case. It too eagerly decides the fate of the whole directory without looking further in. Signed-off-by: Nguyễn Thái Ngọc Duy --- Haven't figured out how to cleanly fix this yet, unfortunately. t/t3700-add.sh | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-) diff --git a/t/t3700-add.sh b/t/t3700-add.sh index 7de42fa..6c3eed6 100755 --- a/t/t3700-add.sh +++ b/t/t3700-add.sh @@ -295,4 +295,20 @@ test_expect_success C_LOCALE_OUTPUT 'git add --dry-run --ignore-missing of non-e test_cmp expect.err actual.err ' +cat >expected <test/.gitignore <actual && + test_cmp expected actual +' + test_done -- 1.7.4.74.g639db