DragonFly On-Line Manual Pages
CVS(1) DragonFly General Commands Manual CVS(1)
NAME
cvs - OpenCVS Concurrent Versioning System
SYNOPSIS
cvs [-flnQqRrtVvw] [-d root] [-e editor] [-s var=val] [-T tmpdir]
[-z level] command ...
DESCRIPTION
The cvs program acts as both client and server for the use of and
administration of a CVS source repository. CVS is used to maintain
version information on files that are kept in a repository. Although it
is more commonly used to track changes in source code, there are no real
limitations to the type of files that can be stored in a repository. For
a general introduction to CVS, see cvsintro(7).
cvs reads its startup configuration file, .cvsrc, from the home directory
of the user who invoked it. This file is used to specify implicit
options passed to cvs or one of its commands whenever it is invoked. The
defaults in the configuration file can be overridden with the -f option
(see below). See cvs(5) for further information.
cvs also supports keyword substitution - see the rcs(1) man page for more
information.
The following options are supported:
-d root
Use root as the path to the root directory of the CVS repository.
The value must specify an absolute path.
-e editor
Use the program editor whenever editing log information. This
option overrides the environment variables CVSEDITOR, VISUAL, and
EDITOR.
-f Do not read the user's configuration file on startup.
-l Suppress logging of history information.
-n Dry-run mode. Show which files will be used by the command
issued without really running it.
-Q Be extra quiet. Only error messages will be displayed.
-q Be quiet about reporting.
-R Permit checkout from a read-only repository. Implies -l. See
also CVSREADONLYFS, below.
-r Extract files in read-only mode.
-s var=val
Set the value of the internal variable var to the string val.
-T tmpdir
Set the value of the directory where temporary files are to be
created. The default is set to /tmp. This option overrides the
TMPDIR environment variable.
-t Trace program execution.
-V Verbose mode. All messages will be displayed. This is the
default. -V and -Q are mutually exclusive. If both are
specified, -Q takes precedence.
-v Display version information and exit.
-w Extract new files in read-write mode. Overrides the setting of
the CVSREAD environment variable. This is the default unless
CVSREAD is set or the -r option is specified.
-z level
Specify the compression level to gzip(1) when transferring files.
The compression level ranges from 1 to 9, with 1 being the
fastest, and 9 providing the best level of compression. The
default is 6.
COMMANDS
cvs supports the following commands: add, admin, annotate, checkout,
commit, diff, edit, editors, export, history, import, init, kserver, log,
rannotate, rdiff, release, remove, rlog, rtag, server, status, tag,
unedit, update, version, watch, watchers. The commands are fully
explained in this section.
Files may be selected by revision or, where no revision is specified, the
latest revision of the default branch is used. Revisions are specified
either by using the -r option or by appending the revision number to any
option that supports it.
cvs supports the notion of state. The state is an arbitrary string of
characters used to describe a file (or a specific revision of a file).
States can be set or changed using the -s option, for CVS tools which
support it. The state of a file/revision can be modified without having
to commit a new file/revision. The default state is `Exp'
(Experimental). Examples of states could be `Dev', `Reviewed', or
`Stab'.
add
Before a file is known to cvs, it must be added to the repository using
this command. Adding a file does not actually publish the contents of
the file: the commit command must also be used to publish it into the
repository, and thus let others access the file.
Note: since directories have no versioning system, it is sufficient to
add them with the add command alone; the commit command is not necessary.
usage: cvs add [-k mode] [-m msg] file ...
The add command takes the following options:
-k mode
Specify the keyword substitution mode.
-m msg Attach log message msg. By default, no log message is
required.
Aliases: ad, new.
admin
The admin command is used to directly modify the RCS files.
usage: cvs admin [-Iq] [-b branch] [-k mode] [-m rev:msg]
[-N tag[:rev]] [-n tag[:rev]] [-o rev]
[-s state[:rev]] [-t file | str]
The admin command takes the following options:
-b branch
Set the default branch to branch.
-I Command is interactive.
-k mode
Specify the keyword substitution mode.
-m rev:msg
Change the log message of a revision.
-N tag[:rev]
Same as -n, but override tag if it already exists.
-n tag[:rev]
Associate the tag with the rev or the branch given as
argument. If the revision or the branch is not specified, the
tag is deleted. The `:' character means the association of
the tag and the latest revision of the default branch. A
branch number ending with the `.' character means the current
latest revision in the branch. This option is functionally
the same as the rtag command, but it avoids the check of the
tags done with the CVSROOT/taginfo file.
-o rev Delete one or more revisions. The specifications of the
values or revisions are as follows:
rev Specific revision.
rev1:rev2
Delete all revisions of a branch between rev1 and
rev2.
rev1::rev2
Delete all revisions of a branch between rev1 and rev2
without deleting revisions rev1 and rev2.
:rev Delete all revisions of the branch until revision rev.
rev: Delete all revisions of the branch from revision rev
until the last revision of the branch.
-q Quiet mode.
-s state[:rev]
Change state of a revision.
-t file | str
Change the descriptive text. The descriptive text is taken
from the file specified as argument or from the string str
given as argument if it is preceded by the `-' character. If
no argument is used, the descriptive text is taken from
standard input.
Aliases: adm, rcs.
annotate
For each line of any files specified, show information about its last
revision. The information given is the last revision when a modification
occurred, the author's name, and the date of the revision.
usage: cvs annotate [-flR] [-D date | -r rev] [file ...]
The annotate command takes the following options:
-D date
Show the annotations as of the latest revision no later than
date.
-f Force the use of the head revision if the specified tag or
date is not found. This can be used in combination with -D or
-r to ensure that there is some output from the annotate
command, even if only to show Revision 1.1 of the file.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
-r rev Show annotations as of revision rev (can be a revision number
or a tag).
Aliases: ann, blame.
checkout
The checkout command is used to create a local copy of one or more
modules present on the target CVS repository.
usage: cvs checkout [-AcflNnPpRs] [-d dir] [-j rev] [-k mode]
-D date | -r rev module ...
The checkout command takes the following options:
-A Reset any sticky tags, dates, or keyword substitution modes
that have been set on the tree.
-c Display the list of available modules.
-D date
Check out as of the latest revision no later than date
(implies -P) (is sticky).
-d dir Check out in directory dir instead of the directory bearing
the same name as the module.
-f Force the use of the head revision if the specified tag or
date is not found.
-j rev Merge in changes made between current revision and rev. If
two -j options are specified, only merge the differences
between the two revisions of the branch. This allows
successive merges without having to resolve already resolved
conflicts again.
-k mode
Specify the keyword substitution mode (is sticky).
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-N If used in conjunction with the -d option, files are placed in
local directory module, located in directory dir.
-n Do not execute programs listed in the CVSROOT/modules file.
-P Prune empty directories.
-p Check out files to standard output (avoids stickiness).
-R Enable recursive behaviour. This is the default.
-r rev Check out from a particular revision or branch (implies -P)
(is sticky).
-s Like -c, but include module status.
Aliases: co, get.
commit
The commit command is used to send local changes back to the server and
update the repository's information to reflect the changes.
usage: cvs commit [-flnR] [-F logfile | -m msg] [-r rev] [file ...]
The commit command takes the following options:
-F logfile
Specify a file which contains the log message.
-f Force a file to be committed, even though it is unchanged.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-m msg Specify a log message on the command line (suppresses the
editor invocation).
-n Do not execute programs listed in the CVSROOT/modules file.
-R Enable recursive behaviour. This is the default.
-r rev Commit to a particular symbolic or numerical revision.
Aliases: ci, com.
diff
The diff command is very similar to the diff(1) program, except that the
differential comparisons that it generates are between local or remote
revisions of files stored in the CVS repository.
usage: cvs diff [-abcdilNnpRuw]
[[-D date1 | -r rev1] [-D date2 | -r rev2]]
[-k mode] [file ...]
The diff command takes the following options:
-a Treat all files as ASCII text. See diff(1) for more
information.
-b Causes trailing blanks (spaces and tabs) to be ignored, and
other strings of blanks to compare equal.
-c Produces a diff with three lines of context. See diff(1) for
more information.
-D date1 [-D date2]
Differences between the revision at date1 and the working copy
or date1 and date2 (if specified).
-d Try very hard to produce a diff as small as possible. See
diff(1) for more information.
-i Ignore the case of letters. For example, `A' will compare
equal to `a'.
-k mode
Specify the keyword substitution mode.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-N Include added or removed files.
-n Produces a diff in the same format as that used by rcsdiff(1),
with a count of changed lines on each insert or delete
command.
-p With unified and context diffs, show with each change the
first 40 characters of the last line before the context
beginning with a letter, an underscore or a dollar sign. See
diff(1) for more information.
-R Enable recursive behaviour. This is the default.
-r rev1 [-r rev2]
Differences between revision rev1 and the working copy or rev1
and rev2 (if specified).
-t Will expand tabs in output lines. Normal or -c output adds
character(s) to the front of each line which may screw up the
indentation of the original source lines and make the output
listing difficult to interpret. This option will preserve the
original source's indentation.
-u Produces a unified diff with three lines of context. See
diff(1) for more information.
-w Is similar to -b but causes whitespace (blanks and tabs) to be
totally ignored. For example, "if ( a == b )" will compare
equal to "if(a==b)".
Aliases: di, dif.
edit
The edit command is used to make a file that is being watched (and
therefore read-only) readable and writable and to inform others that it
is in the process of being changed. Notifications terminate when the
commit command is issued. Editing rights on the file can be given up
using the unedit command, which terminates the temporary notifications.
usage: cvs edit [-lR] [-a action] [file ...]
The edit command takes the following options:
-a action
Specify the temporary notification wanted:
commit Another user has committed changes to the file.
edit Another user has issued the edit command on the file.
unedit Another user has issued the unedit command on the
file.
all All of the above.
none None of the above.
The -a flag may appear more than once, or not at all. If
omitted, the action defaults to all.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
editors
The editors command lists the users with edition rights on a file. For
that, pseudo-lock mode must be enabled (see the watch command). The e-
mail address of the user editing the file, the timestamp when the edition
first started, the host from where the edition has been requested and the
path to the edited file are listed.
usage: cvs editors [-lR] [file ...]
The editors command takes the following options:
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
export
The export command extracts a copy of module without including the
directories used for management by cvs. This eases production of a
software release. A date or a revision must be specified for the command
to be valid, which ensures that later extractions can be reproduced with
the same options as the release.
The checked out module's files will be placed in a directory bearing the
same name as the checked out module, by default.
usage: cvs export [-flNnR] [-d dir] [-k mode]
-D date | -r rev module ...
The export command takes the following options:
-D date
Export as of the latest revision no later than date.
-d dir Export in directory dir instead of the directory bearing the
same name as the module.
-f Force the use of the head revision if the specified tag or
date is not found. This can be used in combination with -D or
-r to ensure that the export command is valid.
-k mode
Specify the keyword substitution mode: the -k v option is
often used to avoid substitution of keywords during a release
cycle. However, be aware that it does not handle an export
containing binary files correctly.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-N If used in conjunction with the -d option, files are placed in
local directory module, located in directory dir.
-n Do not execute programs listed in the CVSROOT/modules file.
-R Enable recursive behaviour. This is the default.
-r rev Export from a particular symbolic or numerical revision.
Aliases: ex, exp.
history
The history command is used to display the history of actions done in the
base repository. This functionality is only available if the
CVSROOT/history file has been created. Only the checkout, commit,
export, release, rtag, and update commands are logged into this file.
usage: cvs history [-aceloTw] [-b str] [-D date] [-f file]
[-m module] [-n module] [-p path] [-r rev]
[-t tag] [-u user] [-x ACEFGMORTUW] [-z tz]
[file ...]
The history command takes the following options:
-a Display records for all users. By default, only records from
the user issuing the history command are displayed.
-b str Display everything back to a record containing the string str
in either the module name, the file name, or the repository
path.
-c Display the archived files (commit command).
-D date
Report no later than date.
-e Select all records (same as -x with all types).
-f file
Display records related to file.
-l Show last checkouts of modules with the checkout command.
-m module
Look for the module (can be used several times).
-n module
Search into the module.
-o Report on modules checked out by users.
-p path
Display records from the base repository being in the
directory specified by the path.
-r rev Report for a particular revision (checks in the RCS file).
-T Report on all tags.
-t tag Report since tag record placed in the CVSROOT/history file by
any user.
-u user
Report for a specified user. Can be used several times to
match many users.
-w Check that records match the current working directory.
-x ACEFGMORTUW
Extract by a specific record type specified by a single
letter. They can be used in combination. The available types
are as follows:
A A file has been added with the add command.
C A merge has been done, but unresolved conflicts still
remain.
E Export.
F Release.
G A merge has been done without conflict.
M A file has been modified (using the commit command).
O Checkout.
R A file has been removed with the remove command.
T Rtag.
U Normal update.
W The file has been deleted from the directory because
it does not exist anymore in the base repository.
-z tz Display records with the time synchronized with timezone tz.
All records have the following five first columns:
- The record type (the -x option).
- The date of the action.
- The time of the action.
- The time zone.
- The user who made the action.
The other columns vary depending on the command issued:
For records coming from the rtag command, the additional columns are as
follows:
<module> [<tag>:<argument>] {<working directory>}
For records coming from the checkout and export commands, the additional
columns are as follows:
<request> <repository> =<module>= <working directory>
For records coming from the release command, the additional columns are
as follows:
=<module>= <working directory>
For records coming from the commit and update commands, the additional
columns are as follows:
<version> <file> <module> == <working directory>
Aliases: hi, his.
import
Import sources into CVS using vendor branches.
At least three arguments are required: module specifies the location of
the sources to be imported; vendortag is a tag for the entire branch;
releasetag is used to identify the files created with cvs import.
usage: cvs import [-d] [-b branch] [-I ign] [-k mode] [-m msg]
[-W spec] module vendortag releasetag
The import command takes the following options:
-b branch
Specify the first-level branch number.
-d Use the file's last modification time as the timestamp for the
initial revisions.
-I ign Ignore files specified by ign. This option can be used
several times on the command line. To see all files, use the
-I ! specification.
-k mode
Specify the keyword substitution mode (is sticky).
-m msg Specify the log message to send.
-W spec
Wrappers specification line.
Aliases: im, imp.
init
Create a CVS repository if it doesn't exist.
kserver
Start a Kerberos authentication server.
log
The log command displays information on a file such as its different
revisions, description, different tags, as well as the comments, dates,
and authors of these revisions. By default, the log command displays all
the available information; the options are only used to restrict the
displayed information.
usage: cvs log [-bhlNRt] [-d dates] [-r revs] [-s state]
[-w users] [file ...]
The log command takes the following options:
-b List revisions of the default branch only.
-d dates
Specify revisions with dates matching the specification. The
specification might be as follows:
date1<date2 or date2>date1
Select all revisions between date1 and date2.
<date or date>
Select all revisions before date.
>date or date<
Select all revisions after date.
date Select the latest revision before or equal to date.
The `>' and `<' characters can be followed by the `='
character to imply an inclusive specification. Several
specifications can be used by separating them with the `;'
character.
-h Print header only.
-l Limit the scope of the search to the local directory only.
-N Do not list tags.
-R Print name of RCS file only.
-r revs
Specify revision(s) to list:
rev1,rev2,...
A list of revisions is specified by separating names
or numbers of revisions by the `,' character.
rev1:rev2
List all revisions between rev1 and rev2 (they must be
on the same branch).
:rev List all revisions since the beginning of the branch
until rev included.
rev: List all revisions of the branch beginning with rev.
branch List all revisions of a branch.
branch.
List the latest revision of the branch branch.
branch1:branch2
List all revisions of branches between branch1 and
branch2.
Without argument, the -r option means the latest revision of
the default branch.
-s state
List revisions of the specified state only. Several states
can be listed by separating them with the `,' character.
-t Print header and description only.
-w users
Do not list revisions made by specified users. Usernames
should be separated by the `,' character.
Aliases: lo.
rannotate
For each line of any files specified, show information about its last
revision. The information given is the last revision when a modification
occurred, the author's name, and the date of the revision. This command
does not need a local checkout of the repository to work.
usage: cvs rannotate [-flR] [-D date | -r rev] module ...
The rannotate command takes the following options:
-D date
Show the annotations as of the latest revision no later than
date.
-f Force the use of the head revision if the specified tag or
date is not found. This can be used in combination with -D or
-r to ensure that there is some output from the rannotate
command, even if only to show Revision 1.1 of the file.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
-r rev Show annotations as of revision rev (can be a revision number
or a tag).
Aliases: rann, ra.
rdiff
The rdiff command lists differences between two revisions in a patch(1)
compatible format. This command does not need a local checkout of the
repository to work.
usage: cvs rdiff [-flR] [-c | -u] [-s | -t] [-V ver]
-D date | -r rev [-D date2 | -r rev2]
module ...
The rdiff command takes the following options:
-c Produces a diff with three lines of context. See diff(1) for
more information. This is the default.
-D date [-D date2]
Differences between the revision at date and the working copy
or date and date2 (if specified).
-f Force the use of the head revision if the specified date or
revision is not found.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
-r rev [-r rev2]
Differences between revision rev and the working copy or rev
and rev2 (if specified).
-s Create a summary change instead of a whole patch.
-t Lists differences between the last two revisions of each file.
-u Produces a diff in unidiff format.
-V ver Use the RCS version ver for keyword substitution.
Aliases: pa, patch.
release
The release command indicates to cvs that the working copy of a module is
no longer in use and checks that non archived modifications in the base
repository do exist. This command is not mandatory. Local directories
could always be removed without using it, but in this case the handling
of history information will no longer be correct (see the history
command).
usage: cvs release [-d] dir ...
The release command takes the following options:
-d dir Remove the directory dir. Be aware that this option silently
removes any directories that have been added to the local
working copy without using the add command.
For each file not being synchronized with the base repository, a single
letter prefix is given to specify the state of the file. The possible
prefixes are as follows:
? The file is unknown to cvs and is not in the list of files to
ignore. Any new directories which have not been added with the
add command are silently ignored as well as their content.
A The file has been added with the add command, but has not been
committed to the repository with the commit command.
M The file has been locally modified; a more recent version might
exist in the base repository.
R The file has been removed with the remove command, but has not
been committed to the repository with the commit command.
U A more recent version of the file does exist but it is not
locally up to date.
Aliases: re, rel.
remove
The remove command is used to inform cvs that file is scheduled to be
removed from the repository. Files are not actually removed from the
repository until the commit command has been run subsequently.
There is no way to remove a directory with the remove command. cvs will
only remove a directory if it is empty and if the checkout or update
commands are run with the -P option. (Note that the export command
always removes empty directories.)
usage: cvs remove [-flR] [file ...]
The remove command takes the following options:
-f Force local file removal. If this flag is not used, the file
must be locally removed beforehand for the command to be
valid.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
Aliases: rm, delete.
rlog
The rlog command displays information on a file such as its different
revisions, description, different tags, as well as the comments, dates,
and authors of these revisions. By default, the rlog command displays
all the available information; the options are only used to restrict the
displayed information. This command does not need a local checkout of
the repository to work.
usage: cvs rlog [-bhlNRt] [-d dates] [-r revs] [-s state]
[-w users] module ...
The rlog command takes the following options:
-b List revisions of the default branch only.
-d dates
Specify revisions with dates matching the specification. The
specification might be as follows:
date1<date2 or date2>date1
Select all revisions between date1 and date2.
<date or date>
Select all revisions before date.
>date or date<
Select all revisions after date.
date Select the latest revision before or equal to date.
The `>' and `<' characters can be followed by the `='
character to imply an inclusive specification. Several
specifications can be used by separating them with the `;'
character.
-h Print header only.
-l Limit the scope of the search to the local directory only.
-N Do not list tags.
-R Print name of RCS file only.
-r revs
Specify revision(s) to list:
rev1,rev2,...
A list of revisions is specified by separating names
or numbers of revisions by the `,' character.
rev1:rev2
List all revisions between rev1 and rev2 (they must be
on the same branch).
:rev List all revisions since the beginning of the branch
until rev included.
rev: List all revisions of the branch beginning with rev.
branch List all revisions of a branch.
branch.
List the latest revision of the branch branch.
branch1:branch2
List all revisions of branches between branch1 and
branch2.
Without argument, the -r option means the latest revision of
the default branch.
-s state
List revisions of the specified state only. Several states
can be listed by separating them with the `,' character.
-t Print header and description only.
-w users
Do not list revisions made by specified users. Usernames
should be separated by the `,' character.
Aliases: rlo.
rtag
The rtag command adds a symbolic tag to one or more modules. It is often
used to create a new branch using the -b option.
usage: cvs rtag [-abdFflnR] [-D date | -r rev]
symbolic_tag module ...
The rtag command takes the following options:
-a Clear tag from files already removed with the remove command.
-b Create a branch.
-D date
Tag the most recent revision before date.
-d Delete tag.
-F Move tag if it already exists. If this option is not used and
a tag is used a second time, cvs will not execute the action.
-f Force the use of the head revision if the specified revision
or date is not found.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-n Do not execute programs listed in the CVSROOT/modules file.
-R Enable recursive behaviour. This is the default.
-r rev Tag at revision rev.
Aliases: rt, rfreeze.
server
Server mode.
status
The status command is used to display the state of checked out files.
usage: cvs status [-lRv] [file ...]
The status command takes the following options:
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
-v Display symbolic tags for file.
The state may be one of the following:
Locally Added
The file has been added with the add command, but has
not been committed to the repository with the commit
command.
Locally Modified
The file is up to date, but has been locally modified.
Locally Removed
The file has been removed with the remove command, but
has not been committed to the repository with the
commit command.
Needs Checkout
The file has not been modified; a new version is
available.
Needs Merge
The file has been modified and a newer version is
available.
Needs Patch
Same as Needs Checkout but, in client-server mode,
only the differences are sent to save network
resources.
Unresolved Conflict
A merge has been done, but unresolved conflicts still
remain.
Up-to-date
The file is up to date.
Aliases: st, stat.
tag
The tag command adds a symbolic tag to a checked out version of one or
more files.
usage: cvs tag [-bcdFflR] [-D date | -r rev] [symbolic_tag]
[file ...]
The tag command takes the following options:
-b Create a branch.
-c Check that working files are not modified.
-D date
Tag the most recent revision before date.
-d Delete tag.
-F Move tag if it already exists. If this option is not used and
a tag is used a second time, cvs will not execute the action.
-f Force the use of the head revision if the specified revision
or date is not found.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
-r rev Tag at revision rev.
Aliases: ta, freeze.
unedit
The unedit command is used to give up an edition on a file and thus
cancel the wanted temporary notifications. If the file has been modified
since the edit command has been issued, cvs will ask if it should go back
to the previous version, and lose the modifications done on the file, or
stay in edition mode on it.
usage: cvs unedit [-lR] [file ...]
The unedit command takes the following options:
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
update
The update command is used to merge any of the changes that have occurred
on the remote repository into the local one where the command was run.
usage: cvs update [-ACdflPpR] [-D date | -r rev] [-I ign]
[-j rev] [-k mode] [-W spec] [file ...]
The update command takes the following options:
-A Reset any sticky tags, dates, or keyword substitution modes
that have been set on the tree.
-C Overwrite locally modified files with clean repository copies.
-D date
Update as of the latest revision no later than date (is
sticky).
-d Create any new directories. Without this option, cvs does not
create any new files sitting in these new directories added in
the base repository since the last update of the working copy,
or since the last update with the -d option.
-f Force the use of the head revision if the specified tag or
date is not found.
-I ign Ignore files specified by ign. This option can be used
several times on the command line. To see all files, use the
-I ! specification.
-j rev Merge in changes made between current revision and rev. If
two -j options are specified, only merge the differences
between the two revisions of the branch. This allows
successive merges without having to resolve already resolved
conflicts again.
-k mode
Specify the keyword substitution mode (is sticky).
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-P Prune any directories that have become empty as a result of
the update.
-p Send the result of the update to standard output (avoids
stickiness).
-R Enable recursive behaviour. This is the default.
-r rev Update from a particular revision or branch (is sticky).
-W spec
Wrappers specification line.
By default, the update command does not create new directories; the -d
option must be used for that.
For each file updated, a single letter prefix is given to specify the
state of the file. The possible prefixes are as follows:
? The file is unknown to cvs.
A The file has been added with the add command, but has not been
committed to the repository with the commit command.
C A merge, with a more recent version of the file, has been done,
but unresolved conflicts still remain.
M The file has been locally modified; if a more recent version is
available, the merge has been done without conflict.
P The same as `U', but, in client-server mode, only differences are
sent to save network resources.
R The file has been removed with the remove command, but has not
been committed to the repository with the commit command.
U The file is up to date.
Aliases: up, upd.
version
Causes cvs to print its version information. If this command is issued
within a local copy of a remote repository or if either the CVSROOT
environment variable or the -d flag specify a remote repository, cvs will
also connect to the server and ask it to print its version information.
Aliases: ve, ver.
watch
The watch command switches a file from normal mode to pseudo-lock mode as
well as handling the notifications associated with it. Pseudo-lock mode
means knowing who is editing a file: for that, cvs extracts the file in
read-only mode. Users must use the edit command to get the editing
rights on the file.
One of the following arguments to the watch command is mandatory: on,
off, add, or remove. on switches the file into pseudo-lock mode; off
switches it back to normal mode; add adds notifications for specific
actions on the file; remove removes those notifications.
The notifications are permanent. They remain in place until the watch
remove command is issued while the temporary notifications are made
available with the edit command.
usage: cvs watch on | off | add | remove [-lR] [-a action]
[file ...]
The watch command takes the following options:
-a action
Specify the permanent notification wanted for add | remove:
commit Another user has committed changes to the file.
edit Another user is editing the file.
unedit Another user has finished editing the file.
all All of the above.
none No notification.
If no specification is requested using the add or remove
arguments, it implies the -a all option.
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
watchers
The watchers command lists the users who asked for notifications as well
as the notification details. The possible notifications are as follows:
commit Permanent watch of a commit of a new version of a file.
edit Permanent watch of the start of file edition.
tcommit
Temporary watch of a commit of new version of a file.
tedit Temporary watch of the start of file edition.
tunedit
Temporary watch of the end of file edition.
unedit Permanent watch of the end of file edition.
The temporary watches are set using the edit command, until the commit or
unedit command is issued on a file.
usage: cvs watchers [-lR] [file ...]
The watchers command takes the following options:
-l Limit the scope of the search to the local directory only and
disable recursive behaviour.
-R Enable recursive behaviour. This is the default.
ENVIRONMENT
CVS_CLIENT_LOG
This variable enables logging of all communications between the
client and server when running in non-local mode. If set, this
environment variable must contain a base path from which two
paths will be generated by appending ".in" to the value for the
server's input and ".out" for the server's output.
The path can contain the following substitutes:
%c the command being run
%d the date
%p the process ID
%u the username of the person running it
The substitutes are only supported by OpenCVS.
CVS_RSH
Name of the program to use when connecting to the server through
a remote shell. The default is to use the ssh(1) program.
CVS_SERVER
If set, gives the name of the program to invoke as a cvs server
when using remote shell. The default is to use `cvs'.
CVSEDITOR
Name of the editor to use when editing commit messages. Checked
before EDITOR and VISUAL.
CVSREAD
If set, cvs extracts files in read-only mode.
CVSREADONLYFS
Permit checkout from a read-only repository. Implies -l. See
also -R, above.
CVSROOT
When set, this variable should contain the string pointing to the
root directory of the CVS repository. The contents of this
variable are ignored when the -d option is given or if `Root'
files exist in the checked-out copy.
EDITOR Name of the editor to use when editing commit messages. This is
traditionally a line-oriented editor, such as ex(1).
HOME Directory where the .cvsignore and .cvsrc files are searched for.
TMPDIR When set, this variable specifies the directory where temporary
files are to be created. The default is set to /tmp.
VISUAL Name of the editor to use when editing commit messages. This is
traditionally a screen-oriented editor, such as vi(1).
EXIT STATUS
The cvs utility exits 0 on success, and >0 if an error occurs.
SEE ALSO
diff(1), gzip(1), patch(1), rcs(1), cvs(5), cvsintro(7)
STANDARDS
The flag [-x] has no effect and is provided for compatibility only.
HISTORY
The OpenCVS project is a BSD-licensed rewrite of the original Concurrent
Versioning System written by Jean-Francois Brousseau. The original CVS
code was written in large parts by Dick Grune, Brian Berliner and Jeff
Polk.
AUTHORS
Jean-Francois Brousseau
Vincent Labrecque
Joris Vink
Xavier Santolaria
CAVEATS
This CVS implementation does not fully conform to the GNU CVS version.
In some cases, this was done explicitly because GNU CVS has
inconsistencies or ambiguous behaviour. Some things have also been left
out or modified to enhance the overall security of the system.
Among other things, support for the pserver connection mechanism has been
dropped because of security issues with the authentication mechanism.
DragonFly 6.5-DEVELOPMENT March 26, 2011 DragonFly 6.5-DEVELOPMENT