Note: Patterns specified in ".hgignore" are not rooted. Please see "hg help hgignore" for details.

To use a plain path name without any pattern matching, start it with
"path:". These path names must completely match starting at the
current repository root.

To use an extended glob, start a name with "glob:". Globs are rooted
at the current directory; a glob such as "*.c" will only match files
in the current directory ending with ".c".

The supported glob syntax extensions are "**" to match any string
across path separators and "{a,b}" to mean "a or b".

To use a Perl/Python regular expression, start a name with "re:".
Regexp pattern matching is anchored at the root of the repository.

To read name patterns from a file, use "listfile:" or "listfile0:".
The latter expects null delimited patterns while the former expects line
feeds. Each string read from the file is itself treated as a file
pattern.

All patterns, except for "glob:" specified in command line (not for
"-I" or "-X" options), can match also against directories: files
under matched directories are treated as matched.

Plain examples:

path:foo/bar a name bar in a directory named foo in the root
of the repository
path:path:name a file or directory named "path:name"

Glob examples:

glob:*.c any name ending in ".c" in the current directory
*.c any name ending in ".c" in the current directory
**.c any name ending in ".c" in any subdirectory of the
current directory including itself.
foo/*.c any name ending in ".c" in the directory foo
foo/**.c any name ending in ".c" in any subdirectory of foo
including itself.

Regexp examples:

re:.*\.c$ any name ending in ".c", anywhere in the repository

File examples:

listfile:list.txt read list from list.txt with one file pattern per line
listfile0:list.txt read list from list.txt with null byte delimiters