Re: ignoring files/directories in git
- From
Boaz Harrosh <bharrosh@panasas.com>
- Date
- Sep 22, 2008, 10:41 UTC
- Message-ID
- <48D77643.1090908@panasas.com>
- In-Reply-To
- <20080922085200.GI21650@dpotapov.dyndns.org>
Dmitry Potapov wrote:
Show 37 quoted lines
> On Mon, Sep 22, 2008 at 10:37:00AM +0300, Boaz Harrosh wrote: >> I have 1.6.0.1 I compiled here, and it has the same problem. So it is >> a very recent fix > > I certainly tested 1.6.0.1 and does not have this problem, and it was > fixed a long time ago: > > === > commit d6b8fc303b389b026f2bf9918f6f83041488989b > Author: Junio C Hamano <gitster@pobox.com> > Date: Thu Jan 31 01:17:48 2008 -0800 > > gitignore(5): Allow "foo/" in ignore list to match directory "foo" > > A pattern "foo/" in the exclude list did not match directory > "foo", but a pattern "foo" did. This attempts to extend the > exclude mechanism so that it would while not matching a regular > file or a symbolic link "foo". In order to differentiate a > directory and non directory, this passes down the type of path > being checked to excluded() function. > > A downside is that the recursive directory walk may need to run > lstat(2) more often on systems whose "struct dirent" do not give > the type of the entry; earlier it did not have to do so for an > excluded path, but we now need to figure out if a path is a > directory before deciding to exclude it. This is especially bad > because an idea similar to the earlier CE_UPTODATE optimization > to reduce number of lstat(2) calls would by definition not apply > to the codepaths involved, as (1) directories will not be > registered in the index, and (2) excluded paths will not be in > the index anyway. > === > > The patch is included in 1.5.5. > > Dmitry > --
Ok I found it. Regular subdirectories it works as you said, but soft-link to a folder does not. Sorry for the noise i didn't realize that in my test it was a simlink and not a full directory.
Please don't fix it if it will hurt performance, I'm happy with current solution as it is. Just maybe a small addition to the .gitignore documentation perhaps.
Boaz