# HG changeset patch # User Yun Lee # Date 1303052915 -28800 # Node ID 0528b69f8db4995179fa35b7fb2a457723922b2a # Parent 1c1e1232abdccec2f56e7b3e01899da118eb938f help: move hgignore man page into built-in help (issue2769) diff -r 1c1e1232abdc -r 0528b69f8db4 doc/hgignore.5.txt --- a/doc/hgignore.5.txt Sat Apr 23 15:04:15 2011 +0200 +++ b/doc/hgignore.5.txt Sun Apr 17 23:08:35 2011 +0800 @@ -11,85 +11,7 @@ :Manual section: 5 :Manual group: Mercurial Manual -Synopsis --------- - -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. - -Description ------------ - -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 |hgrc(5)|_ man page for details -of how to configure these files. Look for the "ignore" entry in the -"ui" section. - -To control Mercurial's handling of files that it manages, see the -|hg(1)|_ man page. Look for the ``-I`` and ``-X`` options. - -Syntax ------- - -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: - -``regexp`` - Regular expression, Python/Perl syntax. -``glob`` - 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 ``^``. - -Example -------- - -Here is an example ignore file. :: - - # use glob syntax. - syntax: glob - - *.elc - *.pyc - *~ - - # switch to regexp syntax. - syntax: regexp - ^\.pc/ +.. include:: ../mercurial/help/hgignore.txt Author ------ @@ -109,3 +31,4 @@ Public License version 2 or any later version. .. include:: common.txt + diff -r 1c1e1232abdc -r 0528b69f8db4 mercurial/help.py --- a/mercurial/help.py Sat Apr 23 15:04:15 2011 +0200 +++ b/mercurial/help.py Sun Apr 17 23:08:35 2011 +0800 @@ -103,9 +103,11 @@ loaddoc('templates')), (['urls'], _('URL Paths'), loaddoc('urls')), (["extensions"], _("Using additional features"), extshelp), - (["subrepo", "subrepos"], _("Subrepositories"), loaddoc('subrepos')), - (["hgweb"], _("Configuring hgweb"), loaddoc('hgweb')), - (["glossary"], _("Glossary"), loaddoc('glossary')), + (["subrepo", "subrepos"], _("Subrepositories"), loaddoc('subrepos')), + (["hgweb"], _("Configuring hgweb"), loaddoc('hgweb')), + (["glossary"], _("Glossary"), loaddoc('glossary')), + (["hgignore", "ignore"], _("syntax for Mercurial ignore files"), + loaddoc('hgignore')), ]) # Map topics to lists of callable taking the current topic help and diff -r 1c1e1232abdc -r 0528b69f8db4 mercurial/help/hgignore.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mercurial/help/hgignore.txt Sun Apr 17 23:08:35 2011 +0800 @@ -0,0 +1,81 @@ +Synopsis +-------- + +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. + +Description +----------- + +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 +``http://www.selenic.com/mercurial/hgrc.5.html`` man page for details +of how to configure these files. Look for the "ignore" entry in the +"ui" section. + +To control Mercurial's handling of files that it manages, see the +``http://www.selenic.com/mercurial/hg.1.html`` man page. Look for +the ``-I`` and ``-X`` options. + +Syntax +------ + +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: + +``regexp`` + Regular expression, Python/Perl syntax. +``glob`` + 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 ``^``. + +Example +------- + +Here is an example ignore file. :: + + # use glob syntax. + syntax: glob + + *.elc + *.pyc + *~ + + # switch to regexp syntax. + syntax: regexp + ^\.pc/ diff -r 1c1e1232abdc -r 0528b69f8db4 tests/test-globalopts.t --- a/tests/test-globalopts.t Sat Apr 23 15:04:15 2011 +0200 +++ b/tests/test-globalopts.t Sun Apr 17 23:08:35 2011 +0800 @@ -339,6 +339,7 @@ environment Environment Variables extensions Using additional features glossary Glossary + hgignore syntax for Mercurial ignore files hgweb Configuring hgweb merge-tools Merge Tools multirevs Specifying Multiple Revisions @@ -418,6 +419,7 @@ environment Environment Variables extensions Using additional features glossary Glossary + hgignore syntax for Mercurial ignore files hgweb Configuring hgweb merge-tools Merge Tools multirevs Specifying Multiple Revisions diff -r 1c1e1232abdc -r 0528b69f8db4 tests/test-help.t --- a/tests/test-help.t Sat Apr 23 15:04:15 2011 +0200 +++ b/tests/test-help.t Sun Apr 17 23:08:35 2011 +0800 @@ -109,6 +109,7 @@ environment Environment Variables extensions Using additional features glossary Glossary + hgignore syntax for Mercurial ignore files hgweb Configuring hgweb merge-tools Merge Tools multirevs Specifying Multiple Revisions @@ -182,6 +183,7 @@ environment Environment Variables extensions Using additional features glossary Glossary + hgignore syntax for Mercurial ignore files hgweb Configuring hgweb merge-tools Merge Tools multirevs Specifying Multiple Revisions @@ -698,6 +700,7 @@ environment Environment Variables extensions Using additional features glossary Glossary + hgignore syntax for Mercurial ignore files hgweb Configuring hgweb merge-tools Merge Tools multirevs Specifying Multiple Revisions