CVS FAQ: CVS Ignore 

http://www.loria.fr/~molli/fom-serve/cache/271.html

The "update" and "import" commands use collections of Unix wildcards to skip over files and directories matching any of those patterns.

You may add to the built-in ignore list by adding lines of whitespace-separated wildcards to the following places: (They are read in this order.)

In a file named "cvsignore" in $CVSROOT/CVSROOT.

A Repository Administrator uses this to add site-specific
files and patterns to the built-in ignore list.

In a file named ".cvsignore" in your home directory.

For user-specific files.  For example, if you use "__" as
your default junk file prefix, you can put "__*" in your
.cvsignore file.
People who play around exclusively in directory trees where the
Makefiles are generated by "imake" or "configure" might want to
put "Makefile" in their ignore list, since they are all
generated and usually don't end up in the Repository.

In the CVSIGNORE environment variable.

For session-specific files.

Via the '-I' option on "import" or "update" commands.

For this-command-only files.

In a file named ".cvsignore" within each directory.

The contents of a ".cvsignore" file in each directory is
temporarily added to the ignore list.  This way you can ignore
files that are peculiar to that directory, such as executables
and other generated files without known wildcard patterns.
In any of the places listed above, a single '!' character nulls
out the ignore list.  A Repository administrator can use this to
override, rather than enhance, the built-in ignore list.  A user
can choose to override the system-wide ignore list.  For example,
if you place "! *.o *.a" in your .cvsignore file, only *.o *.a
files, plus any files a local-directory .cvsignore file, are
ignored.
A variant of the ignore-file scheme is used internally during
checkout.  "Module names" found in the modules file (or on the
"checkout" command line) that begin with a '!' are ignored during
checkout.  This is useful to permanently ignore (if the '!' path
is in the modules file) or temporarily ignore (if the '!' path is
on the command line) a sub-directory within a Repository
hierarchy.  For example:
cvs checkout !gnu/emacs/tests gnu/emacs
would checkout the module (or relative path within $CVSROOT) named
"gnu/emacs", but ignore the "tests" directory within it.