gitignore: negating path patterns
From: Michael J Gruber <hidden>
Date: 2016-06-15 22:44:37
Hi there It seems that negating path patterns in gitignore doesn't work, or I don't understand it (or both). With the attached script, git status (1.5.5.1) reports "dir/a" as new and "dir/b" as untracked. I would rather expect it to report "dir/c" as untracked also. It seems that "!b" matches to include "dir/b" (reverting the exclusion "*" as expected), whereas "!dir/" does not match to include "dir/c". What's going on here? Michael P.S.: "*" in dir/.gitignore would do what I want, but I want all patterns in one place. P.P.S.: My first attempt at sending this was blocked (by an MS CDO for Exchange 2000?! Is this gmane playing pranks on me?). So I'll resend with the script inline rather than attached. ---etest.sh--- #!/bin/sh rm -Rf test mkdir test cd test git init mkdir dir echo test > a echo test > dir/a echo test > dir/b echo test > dir/c git add dir/a cat > .git/info/exclude <<EOF * !dir/ !b EOF git status