Introduction to CVS

CVS is the Concurrent Versions System. This is a version control system useful for projects using a central repository to hold files and then track all changes made to those files. These instructions install the client used to manipulate the repository, creation of a repository is covered at Running a CVS Server.

This package is known to build and work properly using an LFS-7.7 platform.

This package is known to build and work properly using the gcc-5 compiler.

Package Information

Additional Downloads

CVS Dependencies


Tcsh-6.19.00, OpenSSH-7.1p1, krb4, MIT Kerberos V5-1.13.2 (for the GSSAPI libraries), ghostscript-9.16, and an MTA (that provides a sendmail command)

CVS will invoke a default text editor to create a commit message if the -m "Commit message" parameter was not used when changes are committed to a repository. CVS looks for the following text editors, in the order shown below, during configuration to determine the default. This default can always be overridden by the CVSEDITOR or EDITOR environment variables and can be specified directly by passing the --with-editor=<desired text editor> parameter to the configure script.

User Notes:

Installation of CVS

By default CVS is statically linked against the Zlib library included in its source tree. This makes it exposed to possible security vulnerabilities in that library. If you want to modify CVS to use the system shared Zlib library, apply the following patch:

patch -Np1 -i ../cvs-1.11.23-zlib-1.patch

Now fix some conflicts with newer libraries and programs:

sed -i -e 's/getline /get_line /' lib/getline.{c,h} &&
sed -i -e 's/^@sp$/& 1/'          doc/cvs.texinfo &&
touch doc/*.pdf

Install CVS by running the following commands:

./configure --prefix=/usr --docdir=/usr/share/doc/cvs-1.11.23 &&

If you wish to create HTML or text docs from the documentation source files, issue the following command:

make -C doc html txt

This package does not come with a working test suite.

Now, as the root user:

make install &&
make -C doc install-pdf &&
install -v -m644 FAQ README /usr/share/doc/cvs-1.11.23

If you created any additional documentation, install it by issuing the following commands as the root user:

install -v -m644 doc/*.txt /usr/share/doc/cvs-1.11.23                   &&
install -v -m755 -d        /usr/share/doc/cvs-1.11.23/html/cvs{,client} &&
install -v -m644 doc/cvs.html/* \
                           /usr/share/doc/cvs-1.11.23/html/cvs          &&
install -v -m644 doc/cvsclient.html/* \

Command Explanations

--with-rsh=ssh: Use this switch to enable ssh as the default remote shell program.

Configuring CVS

Config Files

~/.cvsrc, ~/.cvswrappers, and ~/.cvspass.

Configuration Information

~/.cvsrc is the main CVS configuration file. This file is used by users to specify defaults for different cvs commands. For example, to make all cvs diff commands run with -u, a user would add diff -u to their .cvsrc file.

~/.cvswrappers specifies wrappers to be used in addition to those specified in the CVSROOT/cvswrappers file in the repository.

~/.cvspass contains passwords used to complete logins to servers.


Installed Programs: cvs, cvsbug, and rcs2log
Installed Libraries: None
Installed Directories: /usr/share/cvs and /usr/share/doc/cvs-1.11.23

Short Descriptions


is the main program file for the concurrent versions system.


is used to send problem reports about CVS to a central support site.


is a symlink to the contributed RCS to Change Log generator.

Last updated on 2015-06-26 00:22:19 +0000