cvs

Concurrent version-control system

Syntax:

cvs [ global_options ] cmd [ cmd_options ] [ args ]

Runs on:

QNX Neutrino, Linux, Microsoft Windows

Options:

The global_options are:

--allow-root=rootdir
Specify the legal CVSROOT directory (server only).
-a
Authenticate all communication (client only).
-b
Specify RCS location (CVS 1.9 and older).
-d root
Specify the CVSROOT.


Note: On Windows, cvs checks for environment variables in this order:
  1. HOME
  2. HOMEDRIVE
  3. HOMEPATH

If these are not set, you won't be able to access :pserver: repositories.


-eeditor
Edit messages with editor.
-f
Don't read the `~/.cvsrc' file.
-H
--help
Print a help message.
-l
Don't log in CVSROOT/history file.
-n
Don't change any files.
-Q
Be really quiet.
-q
Be somewhat quiet.
-r
Make new working files read-only.
-s variable=value
Set a user variable.
-T tempdir
Put temporary files in tempdir.
-t
Trace CVS execution.
-v
--version
Display version and copyright information for CVS.
-w
Make new working files read-write.
-x
Encrypt all communication (client only).
-z gzip-level
Set the compression level (client only).

Description:

CVS is a concurrent version-control system that you can use to keep track of source files. The cvs commands, command options, and command arguments are summarized below; for more information, see Version Management with CVS by Per Cederqvist et al.


Note: This utility is subject to the GNU Public License (GPL). We've included it for use on development systems.

add

add [options] [files...]

Add a new file or directory. The options include:

-k kflag
Set keyword expansion. See Keyword substitution,” below.
-m msg
Set the file description.

admin

admin [options] [files...]

Administration of history files in the repository. The options include:

-b[rev]
Set the default branch.
-cstring
Set the comment leader.
-ksubst
Set keyword substitution. See Keyword substitution,” below.
-l[rev]
Lock revision rev, or the latest revision.
-mrev:msg
Replace the log message of revision rev with msg.
-orange
Delete revisions from the repository.
-q
Run quietly; don't print diagnostics.
-sstate[:rev]
Set the state.
-t
Set the file description from standard input.
-tfile
Set the file description from file.
-t-string
Set the file description to string.
-u[rev]
Unlock revision rev, or the latest revision.

annotate

annotate [options] [files...]

Show the last revision where each line was modified. The options include:

-D date
Annotate the most recent revision no later than date.
-f
Use the head revision if the specified tag or date isn't found.
-l
Local; run only in the current working directory.
-R
Operate recursively (default).
-r tag
Annotate revision tag.

checkout

checkout [options] modules...

Get a copy of the sources. The options include:

-A
Reset any sticky tags/date/options.
-c
Output the module database.
-D date
Check out revisions as of date (is sticky).
-d dir
Check out into dir.
-f
Use the head revision if the specified tag or date isn't found.
-j rev
Merge in changes.
-k kflag
Use kflag keyword expansion. See Keyword substitution,” below.
-l
Local; run only in the current working directory.
-N
Don't shorten module paths if -d is specified.
-n
Don't run the module program (if any).
-P
Prune empty directories.
-p
Check out files to standard output (avoids stickiness).
-R
Operate recursively (default).
-r tag
Checkout revision tag (is sticky).
-s
Like -c, but include module status.

commit

commit [options] [files...]

Check changes into the repository. The options include:

-F file
Read the log message from file.
-f
Force the file to be committed; disables recursion.
-l
Local; run only in current working directory.
-m msg
Use msg as the log message.
-n
Don't run the module program (if any).
-R
Operate recursively (default).
-r rev
Commit to rev.

diff

diff [options] [files...]

Show differences between revisions. In addition to the options shown below, diff accepts a wide variety of options to control output style, for example `-c' for context diffs.

The options include:

-D date1
Diff revision for date against working file.
-D date2
Diff rev1/date1 against date2.
-l
Local; run only in the current working directory.
-N
Include diffs for added and removed files.
-R
Operate recursively (default).
-r rev1
Diff revision for rev1 against the working file.
-r rev2
Diff rev1/date1 against rev2.

edit

edit [options] [files...]

Get ready to edit a watched file. The options include:

-a actions
Specify actions for temporary watch, where the actions argument is edit, unedit, commit, all, or none.
-l
Local; run only in current working directory.
-R
Operate recursively (default).

editors

editors [options] [files...]

See who's editing a watched file. The options include:

-l
Local; run only in current working directory.
-R
Operate recursively (default).

export

export [options] modules...

Export files from CVS. The options include:

-D date
Check out revisions as of date.
-d dir
Check out into dir.
-f
Use head revision if the tag or date isn't found.
-k kflag
Use kflag keyword expansion. See Keyword substitution,” below.
-l
Local; run only in current working directory.
-N
Don't shorten module paths if -d is specified.
-n
Don't run the module program (if any).]
-P
Prune empty directories.
-R
Operate recursively (default).
-r tag
Checkout revision tag (is sticky).

history

history [options] [files...]

Show repository access history. The options include:

-a
All users (default is self).
-b str
Back to record with str in module/file/repos field.
-c
Report on committed (modified) files.
-D date
Since date.
-e
Report on all record types.
-l
Last modified (committed or modified report).
-m module
Report on module (repeatable).
-n module
In module.
-o
Report on checked out modules.
-r rev
Since revision rev.
-T
Produce report on all tags.
-t tag
Since tag record placed in history file (by anyone).
-u user
For user user (repeatable).
-w
Working directory must match.
-x types
Report on types, one or more of TOEFWUCGMAR.
-z zone
Output for time zone zone.

import

import [options] repository vendor-tag release-tags...

Import files into CVS, using vendor branches. The options include:

-b bra
Import to vendor branch bra.
-d
Use the file's modification time as the time of import.
-k kflag
Set default keyword substitution mode. See Keyword substitution,” below.
-m msg
Use msg for log message.
-I ign
More files to ignore (! to reset).
-W spec
More wrappers.

init

init

Create a CVS repository if it doesn't exist.

log

log [options] [files...]

Print out history information for files. The options include:

-b
List only revisions on the default branch.
-d dates
Specify dates (d1<d2 for range, d for latest before).
-h
Print only the header.
-l
Local; run only in current working directory.
-N
Don't list tags.
-R
Print only the name of the RCS file.
-rrevs
List only revisions revs.
-s states
List only revisions with the specified states.
-t
Print only the header and descriptive text.
-wlogins
List only revisions checked in by specified logins.

login

login

Prompt for password for authenticating server.

logout

logout

Remove stored password for authenticating server.

rdiff

rdiff [options] modules...

Show differences between releases. The options include:

-c
Context diff output format (default).
-D date
Select revisions based on date.
-f
Use the head revision if the tag or date wasn't found.
-l
Local; run only in current working directory.
-R
Operate recursively (default).
-r rev
Select revisions based on rev.
-s
Short patch — one line per file.
-t
Top two diffs — last change made to the file.
-u
Unidiff output format.
-V vers
Use RCS Version vers for keyword expansion (obsolete).

release

release [options] directory

Indicate that a directory is no longer in use. The options include:

-d
Delete the given directory.

remove

remove [options] [files...]

Remove an entry from the repository. The options include:

-f
Delete the file before removing it.
-l
Local; run only in current working directory.
-R
Operate recursively (default).

rtag

rtag [options] tag modules...

Add a symbolic tag to a module. The options include:

-a
Clear the tag from removed files that would not otherwise be tagged.
-b
Create a branch named tag.
-D date
Tag revisions as of date.
-d
Delete the given tag.
-F
Move the tag if it already exists.
-f
Force a head revision match if the tag/date wasn't found.
-l
Local; run only in current working directory.
-n
No execution of tag program.
-R
Operate recursively (default).
-r tag
Tag the existing tag tag.

status

status [options] files...

Display status information in a working directory. The options include:

-l
Local; run only in current working directory.
-R
Operate recursively (default).
-v
Include tag information for file.

tag

tag [options] tag [files...]

Add a symbolic tag to checked out version of files. The options include:

-b
Create a branch named tag.
-D date
Tag revisions as of date.
-d
Delete the given tag.
-F
Move the tag if it already exists.
-f
Force a head revision match if the tag/date wasn't found.
-l
Local; run only in current working directory.
-n
No execution of tag program.
-R
Operate recursively (default).
-r tag
Tag the existing tag tag.

unedit

unedit [options] [files...]

Undo an edit command. The options include:

-a actions
Specify actions for temporary watch, where the actions argument is edit, unedit, commit, all, or none.
-l
Local; run only in current working directory.
-R
Operate recursively (default).

update

update [options] [files...]

Bring the work tree into sync with the repository. The options include:

-A
Reset any sticky tags/date/options.
-D date
Check out revisions as of date (is sticky).
-d
Create directories.
-f
Use the head revision if the tag/date wasn't found.
-I ign
More files to ignore (! to reset).
-j rev
Merge in changes.
-k kflag
Use kflag keyword expansion. See Keyword substitution,” below.
-l
Local; run only in current working directory.
-P
Prune empty directories.
-p
Check out files to standard output (avoids stickiness).
-R
Operate recursively (default).
-r tag
Checkout revision tag (is sticky).
-W spec
More wrappers.

watch

watch [on|off|add|remove] [options] [files...]

For on/off, turn on/off read-only checkouts of files. For add/remove, add or remove notification on actions. The options include:

-a actions
Specify actions for temporary watch, where actions is edit, unedit, commit, all, or none.
-l
Local; run only in current working directory.
-R
Operate recursively (default).

watchers

watchers [options] [files...]

See who's watching a file. The options include:

-l
Local; run only in current working directory.
-R
Operate recursively (default).

Keyword substitution

Keyword expansion modes:

-kkv
$Id: file1,v 1.1 1993/12/09 03:21:13 joe Exp $
-kkvl
$Id: file1,v 1.1 1993/12/09 03:21:13 joe Exp harry $
-kk
$Id$
-kv
file1,v 1.1 1993/12/09 03:21:13 joe Exp
-ko
No expansion.
-kb
No expansion; file is binary.

Keywords:

$Author: joe $
$Date: 1993/12/09 03:21:13 $
$Header: /home/files/file1,v 1.1 1993/12/09 03:21:13 joe Exp harry $
$Id: file1,v 1.1 1993/12/09 03:21:13 joe Exp harry $
$Locker: harry $
$Name: snapshot_1_14 $
$RCSfile: file1,v $
$Revision: 1.1 $
$Source: /home/files/file1,v $
$State: Exp $
$Log: file1,v $
Revision 1.1  1993/12/09 03:30:17  joe
Initial revision

Contributing author:

Per Cederqvist et al, Version Management with CVS

Copyright (C) 1992, 1993 Signum Support AB

Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation.

See also:

Using CVS in the Neutrino User's Guide

Per Cederqvist et al, Version Management with CVS, available at http://www.loria.fr/~molli/cvs-index.html