Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> writes: > diff --git a/Documentation/gitignore.txt b/Documentation/gitignore.txt > index 09e82c3..0340c44 100644 > --- a/Documentation/gitignore.txt > +++ b/Documentation/gitignore.txt > @@ -82,10 +82,9 @@ PATTERN FORMAT > > - An optional prefix "`!`" which negates the pattern; any > matching file excluded by a previous pattern will become > - included again. It is not possible to re-include a file if a parent > - directory of that file is excluded. Git doesn't list excluded > - directories for performance reasons, so any patterns on contained > - files have no effect, no matter where they are defined. > + included again. > + It is usually not possible to re-include a file if a parent > + directory of that file is excluded. See NOTES for details. > Put a backslash ("`\`") in front of the first "`!`" for patterns > that begin with a literal "`!`", for example, "`\!important!.txt`". > > @@ -144,6 +143,12 @@ use 'git update-index {litdd}assume-unchanged'. > To stop tracking a file that is currently tracked, use > 'git rm --cached'. > > +It is usually not possible to re-include a file if a parent directory > +of that file is excluded because of performance reasons. However, if > +there are negative rules in the same .gitignore file that contains the > +rule to ignore a specific directory, and those negative rules contain > +a slash, then re-inclusion is possible. Does that mean "performance reasons" goes out the window??? What trade-off are the users making by choosing to do so? Is it explained in the documentation well enough to allow them to make an informed decision? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html