git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: negated list in .gitignore no fun

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Dec 18, 2008, 22:54 UTC
Message-ID
<alpine.LFD.2.00.0812181452030.14014@localhost.localdomain>
In-Reply-To
<alpine.LFD.2.00.0812181429100.14014@localhost.localdomain>
On Thu, 18 Dec 2008, Linus Torvalds wrote:
Show 16 quoted lines
> 
> So you have several possibilities:
> 
>  (a) either create a .gitignore that looks like this:
> 
> 	*
> 	!X11
> 	!X11/xorg.conf
> 	!anacrontab
> 	!apt
> 	!apt/apt.conf.d
> 	!apt/apt.conf.d/10jidanni
> 	!apt/sources.list
> 
>     which should work around it by telling git that it shouldn't ignore 
>     the subdirectories.

Oh, you should have a '/' there in the subdirectory marker too, because otherwise a file like 'X11/apt' would now match as a positive match.

>  (c) Try to teach git to not ignore subdirectories leading up to 
>      non-ignored files, and give you the .gitignore semantics you like. I 
>      suspect it's not worth it, because the git behaviour is logical once 
>      you know about it and understand it.

.. and because of subtle issues like this - negated entries are really quite complex enough as-is. Don't use them for anything subtle, you _will_ get them wrong regardless.

			Linus
Previous: Linus Torvalds
Message 4 of 4 in “negated list in .gitignore no fun”
  1. jidanni@jidanni.orgDec 18, 2008
  2. Boyd Stephen Smith Jr.Dec 18, 2008
  3. Linus TorvaldsDec 18, 2008
  4. Linus TorvaldsDec 18, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.