Re: gitignore: how to exclude a directory tree from being ignored
- From
Johannes Sixt <j.sixt@viscovery.net>
- Date
- Oct 1, 2009, 12:39 UTC
- Message-ID
- <4AC4A310.8000507@viscovery.net>
- In-Reply-To
- <4AC48D5F.6060401@mycircuit.org>
Peter schrieb:
Show 9 quoted lines
> Hi > I want to exclude binaries except in a dir tree that I do not control. > > In .gitignore I have: > > > I would expect that all *.exe and *.o are ignored except those somewhere > in the vendor dir tree. > However, the *.exe and *.o in the vendor dir tree are also ignored.
This works for me:
*.exe *.o !vendor/*.exe !vendor/*.o
Note that git-status does not descend into directories from which no files are tracked. Therefore, this will work only after you have git-added at least one file from vendor/.
git ls-files -o --exclude-standard does descend into the directory.
Furthermore, the !vendor/*.exe patterns are not recursive. Perhaps it is easier for you to have a separate vendor/.gitignore that has:
!*.exe !*.o
These _are_ recursive.
-- Hannes