Structural Informatics Group (SIG) logo
Home | Projects | Demos | Downloads | Publications | Local Info | About Us | New site
Go to the first, previous, next, last section, table of contents.


Quick reference to CVS commands

This appendix describes how to invoke CVS, with references to where each command or feature is described in detail. For other references run the cvs --help command, or see section Index.

A CVS command looks like:

cvs [ global_options ] command [ command_options ] [ command_args ]

Global options:

--allow-root=rootdir
Specify legal CVSROOT directory (server only) (not in CVS 1.9 and older). See section Setting up the server for password authentication.
-a
Authenticate all communication (client only) (not in CVS 1.9 and older). See section Global options.
-b
Specify RCS location (CVS 1.9 and older). See section Global options.
-d root
Specify the CVSROOT. See section The Repository.
-e editor
Edit messages with editor. See section Committing your changes.
-f
Do not read the `~/.cvsrc' file. See section Global options.
-H
--help
Print a help message. See section Global options.
-l
Do not log in `$CVSROOT/CVSROOT/history' file. See section Global options.
-n
Do not change any files. See section Global options.
-Q
Be really quiet. See section Global options.
-q
Be somewhat quiet. See section Global options.
-r
Make new working files read-only. See section Global options.
-s variable=value
Set a user variable. See section Expansions in administrative files.
-T tempdir
Put temporary files in tempdir. See section Global options.
-t
Trace CVS execution. See section Global options.
-v
--version
Display version and copyright information for CVS.
-w
Make new working files read-write. See section Global options.
-x
Encrypt all communication (client only). See section Global options.
-z gzip-level
Set the compression level (client only).

Keyword expansion modes (see section Substitution 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 (see section Keyword List):

$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

Commands, command options, and command arguments:

add [options] [files...]
Add a new file/directory. See section Adding files to a directory.
-k kflag
Set keyword expansion.
-m msg
Set file description.
admin [options] [files...]
Administration of history files in the repository. See section admin--Administration.
-b[rev]
Set default branch. See section Reverting to the latest vendor release.
-cstring
Set comment leader.
-ksubst
Set keyword substitution. See section Keyword substitution.
-l[rev]
Lock revision rev, or latest revision.
-mrev:msg
Replace the log message of revision rev with msg.
-orange
Delete revisions from the repository. See section admin options.
-q
Run quietly; do not print diagnostics.
-sstate[:rev]
Set the state.
-t
Set file description from standard input.
-tfile
Set file description from file.
-t-string
Set file description to string.
-u[rev]
Unlock revision rev, or latest revision.
annotate [options] [files...]
Show last revision where each line was modified. See section Annotate command.
-D date
Annotate the most recent revision no later than date. See section Common command options.
-f
Use head revision if tag/date not found. See section Common command options.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
-r tag
Annotate revision tag. See section Common command options.
checkout [options] modules...
Get a copy of the sources. See section checkout--Check out sources for editing.
-A
Reset any sticky tags/date/options. See section Sticky tags and section Keyword substitution.
-c
Output the module database. See section checkout options.
-D date
Check out revisions as of date (is sticky). See section Common command options.
-d dir
Check out into dir. See section checkout options.
-f
Use head revision if tag/date not found. See section Common command options.
-j rev
Merge in changes. See section checkout options.
-k kflag
Use kflag keyword expansion. See section Substitution modes.
-l
Local; run only in current working directory. See section Recursive behavior.
-N
Don't "shorten" module paths if -d specified. See section checkout options.
-n
Do not run module program (if any). See section checkout options.
-P
Prune empty directories. See section Moving and renaming directories.
-p
Check out files to standard output (avoids stickiness). See section checkout options.
-R
Operate recursively (default). See section Recursive behavior.
-r tag
Checkout revision tag (is sticky). See section Common command options.
-s
Like -c, but include module status. See section checkout options.
commit [options] [files...]
Check changes into the repository. See section commit--Check files into the repository.
-F file
Read log message from file. See section commit options.
-f
Force the file to be committed; disables recursion. See section commit options.
-l
Local; run only in current working directory. See section Recursive behavior.
-m msg
Use msg as log message. See section commit options.
-n
Do not run module program (if any). See section commit options.
-R
Operate recursively (default). See section Recursive behavior.
-r rev
Commit to rev. See section commit options.
diff [options] [files...]
Show differences between revisions. See section diff--Show differences between revisions. In addition to the options shown below, accepts a wide variety of options to control output style, for example `-c' for context diffs.
-D date1
Diff revision for date against working file. See section diff options.
-D date2
Diff rev1/date1 against date2. See section diff options.
-l
Local; run only in current working directory. See section Recursive behavior.
-N
Include diffs for added and removed files. See section diff options.
-R
Operate recursively (default). See section Recursive behavior.
-r rev1
Diff revision for rev1 against working file. See section diff options.
-r rev2
Diff rev1/date1 against rev2. See section diff options.
edit [options] [files...]
Get ready to edit a watched file. See section How to edit a file which is being watched.
-a actions
Specify actions for temporary watch, where actions is edit, unedit, commit, all, or none. See section How to edit a file which is being watched.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
editors [options] [files...]
See who is editing a watched file. See section Information about who is watching and editing.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
export [options] modules...
Export files from CVS. See section export--Export sources from CVS, similar to checkout.
-D date
Check out revisions as of date. See section Common command options.
-d dir
Check out into dir. See section export options.
-f
Use head revision if tag/date not found. See section Common command options.
-k kflag
Use kflag keyword expansion. See section Substitution modes.
-l
Local; run only in current working directory. See section Recursive behavior.
-N
Don't "shorten" module paths if -d specified. See section export options.
-n
Do not run module program (if any). See section export options.
-P
Prune empty directories. See section Moving and renaming directories.
-R
Operate recursively (default). See section Recursive behavior.
-r tag
Checkout revision tag. See section Common command options.
history [options] [files...]
Show repository access history. See section history--Show status of files and users.
-a
All users (default is self). See section history options.
-b str
Back to record with str in module/file/repos field. See section history options.
-c
Report on committed (modified) files. See section history options.
-D date
Since date. See section history options.
-e
Report on all record types. See section history options.
-l
Last modified (committed or modified report). See section history options.
-m module
Report on module (repeatable). See section history options.
-n module
In module. See section history options.
-o
Report on checked out modules. See section history options.
-r rev
Since revision rev. See section history options.
-T
Produce report on all TAGs. See section history options.
-t tag
Since tag record placed in history file (by anyone). See section history options.
-u user
For user user (repeatable). See section history options.
-w
Working directory must match. See section history options.
-x types
Report on types, one or more of TOEFWUCGMAR. See section history options.
-z zone
Output for time zone zone. See section history options.
import [options] repository vendor-tag release-tags...
Import files into CVS, using vendor branches. See section import--Import sources into CVS, using vendor branches.
-b bra
Import to vendor branch bra. See section Multiple vendor branches.
-d
Use the file's modification time as the time of import. See section import options.
-k kflag
Set default keyword substitution mode. See section import options.
-m msg
Use msg for log message. See section import options.
-I ign
More files to ignore (! to reset). See section import options.
-W spec
More wrappers. See section import options.
init
Create a CVS repository if it doesn't exist. See section Creating a repository.
log [options] [files...]
Print out history information for files. See section log--Print out log information for files.
-b
Only list revisions on the default branch. See section log options.
-d dates
Specify dates (d1<d2 for range, d for latest before). See section log options.
-h
Only print header. See section log options.
-l
Local; run only in current working directory. See section Recursive behavior.
-N
Do not list tags. See section log options.
-R
Only print name of RCS file. See section log options.
-rrevs
Only list revisions revs. See section log options.
-s states
Only list revisions with specified states. See section log options.
-t
Only print header and descriptive text. See section log options.
-wlogins
Only list revisions checked in by specified logins. See section log options.
login
Prompt for password for authenticating server. See section Using the client with password authentication.
logout
Remove stored password for authenticating server. See section Using the client with password authentication.
rdiff [options] modules...
Show differences between releases. See section rdiff---'patch' format diffs between releases.
-c
Context diff output format (default). See section rdiff options.
-D date
Select revisions based on date. See section Common command options.
-f
Use head revision if tag/date not found. See section Common command options.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
-r rev
Select revisions based on rev. See section Common command options.
-s
Short patch - one liner per file. See section rdiff options.
-t
Top two diffs - last change made to the file. See section diff options.
-u
Unidiff output format. See section rdiff options.
-V vers
Use RCS Version vers for keyword expansion (obsolete). See section rdiff options.
release [options] directory
Indicate that a directory is no longer in use. See section release--Indicate that a Module is no longer in use.
-d
Delete the given directory. See section release options.
remove [options] [files...]
Remove an entry from the repository. See section Removing files.
-f
Delete the file before removing it. See section Removing files.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
rtag [options] tag modules...
Add a symbolic tag to a module. See section Revisions and section Branching and merging.
-a
Clear tag from removed files that would not otherwise be tagged. See section Tagging and adding and removing files.
-b
Create a branch named tag. See section Branching and merging.
-D date
Tag revisions as of date. See section Specifying what to tag by date or revision.
-d
Delete tag. See section Deleting, moving, and renaming tags.
-F
Move tag if it already exists. See section Deleting, moving, and renaming tags.
-f
Force a head revision match if tag/date not found. See section Specifying what to tag by date or revision.
-l
Local; run only in current working directory. See section Recursive behavior.
-n
No execution of tag program. See section Common command options.
-R
Operate recursively (default). See section Recursive behavior.
-r rev
Tag existing tag rev. See section Specifying what to tag by date or revision.
status [options] files...
Display status information in a working directory. See section File status.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
-v
Include tag information for file. See section Tags--Symbolic revisions.
tag [options] tag [files...]
Add a symbolic tag to checked out version of files. See section Revisions and section Branching and merging.
-b
Create a branch named tag. See section Branching and merging.
-c
Check that working files are unmodified. See section Specifying what to tag from the working directory.
-D date
Tag revisions as of date. See section Specifying what to tag by date or revision.
-d
Delete tag. See section Deleting, moving, and renaming tags.
-F
Move tag if it already exists. See section Deleting, moving, and renaming tags.
-f
Force a head revision match if tag/date not found. See section Specifying what to tag by date or revision.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
-r rev
Tag existing tag rev. See section Specifying what to tag by date or revision.
unedit [options] [files...]
Undo an edit command. See section How to edit a file which is being watched.
-a actions
Specify actions for temporary watch, where actions is edit, unedit, commit, all, or none. See section How to edit a file which is being watched.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
update [options] [files...]
Bring work tree in sync with repository. See section update--Bring work tree in sync with repository.
-A
Reset any sticky tags/date/options. See section Sticky tags and section Keyword substitution.
-C
Overwrite locally modified files with clean copies from the repository (the modified file is saved in `.#file.revision', however).
-D date
Check out revisions as of date (is sticky). See section Common command options.
-d
Create directories. See section update options.
-f
Use head revision if tag/date not found. See section Common command options.
-I ign
More files to ignore (! to reset). See section import options.
-j rev
Merge in changes. See section update options.
-k kflag
Use kflag keyword expansion. See section Substitution modes.
-l
Local; run only in current working directory. See section Recursive behavior.
-P
Prune empty directories. See section Moving and renaming directories.
-p
Check out files to standard output (avoids stickiness). See section update options.
-R
Operate recursively (default). See section Recursive behavior.
-r tag
Checkout revision tag (is sticky). See section Common command options.
-W spec
More wrappers. See section import options.
watch [on|off|add|remove] [options] [files...]
on/off: turn on/off read-only checkouts of files. See section Telling CVS to watch certain files. add/remove: add or remove notification on actions. See section Telling CVS to notify you.
-a actions
Specify actions for temporary watch, where actions is edit, unedit, commit, all, or none. See section How to edit a file which is being watched.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.
watchers [options] [files...]
See who is watching a file. See section Information about who is watching and editing.
-l
Local; run only in current working directory. See section Recursive behavior.
-R
Operate recursively (default). See section Recursive behavior.


Go to the first, previous, next, last section, table of contents.