This maps names to repository directories. The general syntax of each
MODULE [OPTIONS] [&OTHERMODULE...] [DIR] [FILES]
DIR need not be a top-level project directory – it could be a
subdirectory. If any FILES are specified, the module consists of only
those files from the directory.
An ampersand followed by a module name means to include the expansion of
that module's line in place.
- -a – This is an alias module, meaning it expands literally to
everything after the OPTIONS. In this case, the usual DIR/FILES
behavior is turned off, and everything after the OPTIONS is treated as
other modules or repository directories.
If you use the -a option, you may exclude certain directories from other
modules by putting them after an exclamation point (!). For example
top_proj -a !myproj/a-subdir !myproj/b-subdir myproj
means that checking out
top_proj will get all of
- -d NAME – Names the working directory NAME instead of the module name.
- -e PROGRAM – Runs PROGRAM whenever files in this module are exported.
- -i PROGRAM – Runs PROGRAM whenever files in this module are committed.
The program is given a single argument – the full pathname in the
repository of the file in question. (See commitinfo,
loginfo, and verifymsg for more sophisticated ways to
run commit-triggered programs.)
- -o PROGRAM – Runs PROGRAM whenever files in this module are checked
out. The program is given a single argument, the name of the module.
- -s STATUS – Declares a status for the module. When the modules file is
printed (with cvs checkout -s), the modules are sorted by module status
and then by name. This option has no other effects in CVS, so go wild.
You can use it to sort anything – status, person responsible for the
module, or the module's file language, for example.
- -t PROGRAM – Runs PROGRAM whenever files in this module are tagged with
cvs rtag. The program is passed two arguments: the name of the module
and the tag name. The program is not used for tag, only for rtag. I
have no idea why this distinction is made. You may find the taginfo
file more useful if you want to run programs at tag time.
- -u PROGRAM – Runs PROGRAM whenever a working copy of the module is
updated from its top-level directory. The program is given a single
argument, the full path to the module's repository.