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

Re: gitignore broken in git 1.7.0.1: slash checks leading dirs

From
Johannes Sixt <j.sixt@viscovery.net>
Date
Mar 5, 2010, 15:34 UTC
Message-ID
<4B912469.8060705@viscovery.net>
In-Reply-To
<20100305151248.GA24748@progeny.tock>
Jonathan Nieder schrieb:
Show 6 quoted lines
>  · Otherwise, git treats the pattern as a shell glob suitable for
>    consumption by fnmatch(3) with the FNM_PATHNAME flag: wildcards in the
>    pattern will not match a / in the pathname. For example,
>    "Documentation/*.html" matches "Documentation/git.html" and
>    "tools/perf/Documentation/perf-diff.html" but not
>    "Documentation/ppc/ppc.html".

This is not correct: When the pattern "Documentation/*.html" matches "Documentation/git.html", then it cannot match "tools/perf/Documentation/perf-diff.html". This is because patterns that contain a slash (after stripping a trailing slash) are anchored at the directory that contains the .gitignore.

Said pattern would match the latter name only if it appeared in tools/perf/.gitignore (but in this case it wouldn't match the former name, of course).

-- Hannes
Previous: Jonathan NiederNext: Jonathan Nieder
Message 17 of 19 in “gitignore broken in git 1.7.0.1: slash checks leading dirs”
  1. Jiri SlabyMar 5, 2010
  2. Johannes SixtMar 5, 2010
  3. Jiri SlabyMar 5, 2010
  4. Johannes SixtMar 5, 2010
  5. 1/1 gitignore: do not ignore include/linux/Jiri Slaby, Mar 5, 2010
  6. Jakub NarebskiMar 5, 2010
  7. Jiri SlabyMar 5, 2010
  8. David RientjesMar 10, 2010
  9. Américo WangMar 10, 2010
  10. David RientjesMar 10, 2010
  11. Américo WangMar 8, 2010
  12. Jiri SlabyMar 5, 2010
  13. Jonathan NiederMar 5, 2010
  14. Jiri SlabyMar 5, 2010
  15. Jonathan NiederMar 5, 2010
  16. Jonathan NiederMar 5, 2010
  17. Johannes SixtMar 5, 2010
  18. gitignore.5: Clarify matching rulesJonathan Nieder, Mar 5, 2010
  19. Junio C HamanoMar 5, 2010

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.