Hi everyone, I think there is a typo in the gitignore docs. Its stated on https://git-scm.com/docs/gitignore that >If the pattern does not contain a slash /, Git treats it as a shell >glob pattern and checks for a match against the pathname relative to >the location of the .gitignore file (relative to the toplevel of the >work tree if not from a .gitignore file). I think that maybe two things are not 100% correct. First I think it should be "If the pattern does contain" instead of "does not contain". Secondly, I think it should be mentioned that this is only true for slashes that are not a trailing slash. You find discussions about this at https://github.com/git/git-scm.com/issues/1332 and at https://stackoverflow.com/a/41761521/2311074 Here is my proposal for an alternative, maybe more clear version: >Whenever you have a string that contains a non-trailing slash "/" , its always considered from >the root. There is no difference between foo/bar and /foo/bar. The pattern foo/ is not >considered from the root, because it has no non-trailing slash "/". >One may match a path that does not start at the root by using "**" (see below). Also since we are on it, I would suggest to reduce >If the pattern ends with a slash, it is removed for the purpose of the following description, but it >would only find a match with a directory. In other words, foo/ will match a directory foo and >paths underneath it, but will not match a regular file or a symbolic link foo (this is consistent >with the way how pathspec works in general in Git). to >If the pattern ends with a slash, it would only find a match with a directory. In other words, foo/ >will match a directory foo and paths underneath it, but will not match a regular file or a >symbolic link foo. What do you think? Best regards, Adam