# Three different line formats are valid: | |
# key -a aliases... | |
# key [options] directory | |
# key [options] directory files... | |
# | |
# Where "options" are composed of: | |
# -i prog Run "prog" on "cvs commit" from top-level of module. | |
# -o prog Run "prog" on "cvs checkout" of module. | |
# -e prog Run "prog" on "cvs export" of module. | |
# -t prog Run "prog" on "cvs rtag" of module. | |
# -u prog Run "prog" on "cvs update" of module. | |
# -d dir Place module in directory "dir" instead of module name. | |
# -l Top-level directory only -- do not recurse. | |
# | |
# NOTE: If you change any of the "Run" options above, you'll have to | |
# release and re-checkout any working directories of these modules. | |
# | |
# And "directory" is a path to a directory relative to $CVSROOT. | |
# | |
# The "-a" option specifies an alias. An alias is interpreted as if | |
# everything on the right of the "-a" had been typed on the command line. | |
# | |
# You can encode a module within a module by using the special '&' | |
# character to interpose another module into the current module. This | |
# can be useful for creating a module that consists of many directories | |
# spread out over the entire source repository. | |
# Block access to CVS hogs | |
#world -a denied___checkout_of_world_takes_too_long | |
#. -a denied___checkout_of_world_takes_too_long | |
# self referencing modules | |
project1 project1 | |
# checkout docs in flattened structure | |
docs -d docs common/docs | |
macros common/macros | |
# include docs with project | |
project2 project2 &docs | |
# only project2 | |
project2-only project2 | |
# a use of alias | |
project3-src project3/src | |
project3-src_file -a project3-src/file.c project3-src/file.h | |
project3-sub project3/sub &project3-src_file | |
# embeddings | |
project4 project4 ¯os | |
project5-project4 -d extensions/project4 project4 | |
project5 project5 &project5-project4 ¯os | |
# using -d to build a project from other projects | |
project6-dirA -d dirA project6/A | |
project6-dirB -d dirB project6/B | |
project6 &project6-dirA &project6-dirB | |
# using aliases to provide packaging | |
project7-common -a project7/common | |
project7-pc -a project7-common project7/pc | |
project7-linux -a project7-common project7/linux | |
# simple use of module alias | |
project8-alias -a project8 common |