From: Karsten Blees <karsten.blees@gmail.com>
To: Duy Nguyen <pclouds@gmail.com>
Cc: "Git Mailing List" <git@vger.kernel.org>,
"Misty De Meo" <misty@brew.sh>,
"Øystein Walle" <oystwa@gmail.com>
Subject: Re: 1.8.3 - gitignore not being parsed correctly on OS X; regex support is broken?
Date: Wed, 29 May 2013 18:19:34 +0200 [thread overview]
Message-ID: <51A62A96.6040009@gmail.com> (raw)
In-Reply-To: <CACsJy8DD=LxAKh_fUELJ5Mj0xS_gZE88N_rJFkKGer=YAOqsMg@mail.gmail.com>
Am 29.05.2013 06:19, schrieb Duy Nguyen:
> On Wed, May 29, 2013 at 10:41 AM, Duy Nguyen <pclouds@gmail.com> wrote:
>> The changes in this area since 1.8.2.3 seem to be Karsten's (I'm not
>> blaming, just wanted to narrow down the problem). The patterns of
>> interest seem to be
>>
>> !/bin
>> /bin/*
>> !/bin/brew
>>
>> Without "!/bin" v1.8.3 seems to behave the same as v1.8.2.3.
>
> Karsten, the block "/* Abort if the directory is excluded */" in
> prep_exclude() seems to cause this. I think it goes through the
> exclude patterns, hits "!/bin", believes the patterns do not make
> sense in this context and throws all away.
Yes, I forgot to check the "!" flag to determine if the directory is really excluded. I'll prepare a patch + test case for this.
@Øystein: in the meantime, could you check if this fixes the problem for you?
--- 8< ---
diff --git a/dir.c b/dir.c
index a5926fb..13858fe 100644
--- a/dir.c
+++ b/dir.c
@@ -821,6 +821,9 @@ static void prep_exclude(struct dir_struct *dir, const char *base, int baselen)
dir->basebuf, stk->baselen - 1,
dir->basebuf + current, &dt);
dir->basebuf[stk->baselen - 1] = '/';
+ if (dir->exclude &&
+ dir->exclude->flags & EXC_FLAG_NEGATIVE)
+ dir->exclude = NULL;
if (dir->exclude) {
dir->basebuf[stk->baselen] = 0;
dir->exclude_stack = stk;
--
next prev parent reply other threads:[~2013-05-29 16:19 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-28 17:54 1.8.3 - gitignore not being parsed correctly on OS X; regex support is broken? Misty De Meo
2013-05-28 21:35 ` Øystein Walle
2013-05-28 21:59 ` Junio C Hamano
2013-05-29 3:41 ` Duy Nguyen
2013-05-29 4:19 ` Duy Nguyen
2013-05-29 7:43 ` David Aguilar
2013-05-29 16:19 ` Karsten Blees [this message]
2013-05-29 18:49 ` Øystein Walle
2013-05-29 20:32 ` [PATCH] dir.c: fix ignore processing within not-ignored directories Karsten Blees
2013-06-01 10:44 ` Duy Nguyen
2013-06-02 19:25 ` Junio C Hamano
2013-06-04 16:10 ` Karsten Blees
2013-06-04 16:50 ` [PATCH] t/README: test_must_fail is for testing Git Junio C Hamano
2013-06-04 20:16 ` Philip Oakley
2013-06-04 20:49 ` Junio C Hamano
2013-06-04 21:12 ` Philip Oakley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51A62A96.6040009@gmail.com \
--to=karsten.blees@gmail.com \
--cc=git@vger.kernel.org \
--cc=misty@brew.sh \
--cc=oystwa@gmail.com \
--cc=pclouds@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).