Provided by: mercurial-common_2.0.2-1ubuntu1_all bug


       hgignore - syntax for Mercurial ignore files


       The Mercurial system uses a file called .hgignore in the root directory
       of a repository to control its behavior when it searches for files that
       it is not currently tracking.


       The  working  directory  of  a  Mercurial repository will often contain
       files that should not be tracked by  Mercurial.  These  include  backup
       files  created  by  editors  and  build  products created by compilers.
       These files can be ignored by listing them in a .hgignore file  in  the
       root  of  the  working  directory.  The  .hgignore file must be created
       manually. It is typically  put  under  version  control,  so  that  the
       settings will propagate to other repositories with push and pull.

       An  untracked  file  is  ignored if its path relative to the repository
       root directory, or any prefix path of that path, is matched against any
       pattern in .hgignore.

       For  example,  say  we  have  an  untracked file, file.c, at a/b/file.c
       inside our repository. Mercurial will ignore file.c if any  pattern  in
       .hgignore matches a/b/file.c, a/b or a.

       In  addition,  a  Mercurial  configuration  file can reference a set of
       per-user or global ignore files. See the ignore  configuration  key  on
       the  [ui]  section  of  hg  help config for details of how to configure
       these files.

       To control Mercurial's handling of files that it manages, many commands
       support  the  -I  and  -X  options;  see  hg help <command> and hg help
       patterns for details.


       An ignore file is a plain text file consisting of a list  of  patterns,
       with  one pattern per line. Empty lines are skipped. The # character is
       treated as a comment character, and the \ character is  treated  as  an
       escape character.

       Mercurial supports several pattern syntaxes. The default syntax used is
       Python/Perl-style regular expressions.

       To change the syntax used, use a line of the following form:

       syntax: NAME

       where NAME is one of the following:


              Regular expression, Python/Perl syntax.


              Shell-style glob.

       The chosen syntax stays  in  effect  when  parsing  all  patterns  that
       follow, until another syntax is selected.

       Neither  glob  nor regexp patterns are rooted. A glob-syntax pattern of
       the form *.c will match a file ending in .c in  any  directory,  and  a
       regexp  pattern  of  the  form  \.c$ will do the same. To root a regexp
       pattern, start it with ^.


       Here is an example ignore file.

       # use glob syntax.
       syntax: glob


       # switch to regexp syntax.
       syntax: regexp


       Vadim Gelfer <>

       Mercurial was written by Matt Mackall <>.


       hg(1), hgrc(5)


       This  manual  page  is  copyright  2006  Vadim  Gelfer.   Mercurial  is
       copyright 2005-2010 Matt Mackall.  Free use of this software is granted
       under the terms of the GNU General Public  License  version  2  or  any
       later version.


       Vadim Gelfer <>

       Organization: Mercurial