Pathname Optimization:ACCUREV_IGNORE_ELEMS and .acignore : Values for ACCUREV_IGNORE_ELEMS

Values for ACCUREV_IGNORE_ELEMS
The value of the ACCUREV_IGNORE_ELEMS environment variable must be a SPACE-separated list of filenames, pathnames, and wildcard patterns. Some examples:
*.exe
*.exe *.doc
manuals/*.doc
*.doc README.html
You can use any of these wildcards:
? matches any one character
* matches any sequence of characters (including a zero-length sequence — see note below)
[aekz] matches a, e, k, or z
[a-e] matches a, b, c, d, or e
{one,two,seven} matches one, two, or seven
Additional rules to keep in mind include:
Examples
A simple wild card pattern such as “*.doc” matches any of these names:
chap01.doc
manuals/chap01.doc
widgetproj/src/manuals/usergd/chap01.doc
The pattern manuals/*.doc matches any of these names:
manuals/chap01.doc
manuals/chap02.doc
... but not these names:
manuals/usergd/src/chap01.doc
widgetproj/src/manuals/usergd/chap01.doc
However, using “**” to specify recursion as in manuals/**.doc or manuals/**chap*.doc will match any occurence of *.doc or chap*.doc in any directory underneath any instance of a manuals directory.
You can use the following pattern to ignore all items in the directory tree(s) named usergd (including usergd itself):
usergd*
Specifying Directories and Their Contents
A typical application of ACCUREV_IGNORE_ELEMS is to have stat –x (“list all external files”) ignore temporary build directories. That is, you want the listing to exclude both the directories themselves and all the files within those directories. If the build directories are named build_001, build_002, etc., you might be tempted to use this pattern:
*/build_???/* or build_???/*
But this pattern matches only the contents of the directories, not the directories themselves. Note: a directory matching the pattern that is a subdirectory of another matching directory will be excluded. For example, in structure like build_001/build_002, build_002 will be excluded, but build_001 will not.
Instead, use the following value for ACCUREV_IGNORE_ELEMS:
*/build_??? */build_???/*
(The single pattern */build_???* would match both directories and their contents. But it also might coincidentally match names of some source files, such as lib/build_end.c.)

AccuRev, Inc.
Phone: 781-861-8700
Fax: 781-861-8704
support@accurev.com