diff mercurial/help.py @ 3802:eb66d76c7746

move patterns topics
author Matt Mackall <mpm@selenic.com>
date Tue, 05 Dec 2006 16:36:06 -0600
parents 6f0c42d50394
children 6fa11a9d7cac
line wrap: on
line diff
--- a/mercurial/help.py
+++ b/mercurial/help.py
@@ -41,6 +41,7 @@ unixtime offset::
 
     "1145475591 -7200" (2006-04-19 21:39:51 +0200)
     ''',
+
     'environment|env|Environment Variables':
     r'''
 HGEDITOR::
@@ -102,6 +103,51 @@ EDITOR::
 PYTHONPATH::
     This is used by Python to find imported modules and may need to be set
     appropriately if Mercurial is not installed system-wide.
-    '''
+    ''',
+
+    "patterns|File Name Patterns": r'''
+    Mercurial accepts several notations for identifying one or more
+    files at a time.
+
+    By default, Mercurial treats filenames as shell-style extended
+    glob patterns.
+
+    Alternate pattern notations must be specified explicitly.
+
+    To use a plain path name without any pattern matching, start a
+    name with "path:".  These path names must match completely, from
+    the root of the current repository.
+
+    To use an extended glob, start a name with "glob:".  Globs are
+    rooted at the current directory; a glob such as "*.c" will match
+    files ending in ".c" in the current directory only.
+
+    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.
+
+    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 the current directory, or
+                   any subdirectory
+    foo/*.c        any name ending in ".c" in the directory foo
+    foo/**.c       any name ending in ".c" in the directory foo, or any
+                   subdirectory
+
+    Regexp examples:
+
+    re:.*\.c$      any name ending in ".c", anywhere in the repository
+
+''',
 }