There are a few files on the client (working copy) side that affect CVS's behavior. In some cases, they are analogs of repository administrative files; in other cases, they control behaviors that are only appropriate for the client side.
Specifies options that you want to be used automatically with every CVS command. The format of each line is
where each COMMAND is an unabbreviated CVS command, such as checkout or update (but not co or up). The OPTIONS are those that you want to always be in effect when you run that command. Here is a common .cvsrc line:
update -d -P
To specify global options, simple use cvs as the COMMAND.
Specifies additional ignore patterns. (See cvsignore in the Repository Administrative Files section in this chapter for the syntax.)
You can have a .cvsignore file in your home directory, which will apply every time you use CVS. You can also have directory-specific ones in each project directory of a working copy (these last only apply to the directory where the .cvsignore is located, and not to its subdirectories).
(See $CVSIGNORE in the section Environment Variables in this chapter, for a fuller discussion of ignore processing.)
Stores passwords for each repository accessed via the pserver method. Each line is of the form:
The password is essentially stored in cleartext – a very mild scrambling is done to prevent accidental compromises (such as the root user unintentionally looking inside the file). However, this scrambling will not deter any serious-minded person from gaining the password if they get access to the file.
The .cvspass file is portable. You can copy it from one machine to another and have all of your passwords at the new machine, without ever having run cvs login there. (See also the login and logout commands.)
This is a client side version of the cvswrappers file. (See the Repository Administrative Files section in this chapter.) There can be a .cvswrappers file in your home directory and in each directory of a working copy directory, just as with .cvsignore.