How to edit a file which is being watched
-----------------------------------------
Since a file which is being watched is checked out read-only, you
cannot simply edit it. To make it read-write, and inform others that
you are planning to edit it, use the `cvs edit' command. Some systems
call this a "checkout", but CVS uses that term for obtaining a copy of
the sources (Note:Getting the source), an operation which those
systems call a "get" or a "fetch".
- Command: cvs edit [options] files ...
Prepare to edit the working files FILES. CVS makes the FILES
read-write, and notifies users who have requested `edit'
notification for any of FILES.
The `cvs edit' command accepts the same OPTIONS as the `cvs watch
add' command, and establishes a temporary watch for the user on
FILES; CVS will remove the watch when FILES are `unedit'ed or
`commit'ted. If the user does not wish to receive notifications,
she should specify `-a none'.
The FILES and options are processed as for the `cvs watch'
commands.
Normally when you are done with a set of changes, you use the `cvs
commit' command, which checks in your changes and returns the watched
files to their usual read-only state. But if you instead decide to
abandon your changes, or not to make any changes, you can use the `cvs
unedit' command.
- Command: cvs unedit [`-lR'] files ...
Abandon work on the working files FILES, and revert them to the
repository versions on which they are based. CVS makes those
FILES read-only for which users have requested notification using
`cvs watch on'. CVS notifies users who have requested `unedit'
notification for any of FILES.
The FILES and options are processed as for the `cvs watch'
commands.
If watches are not in use, the `unedit' command probably does not
work, and the way to revert to the repository version is to remove
the file and then use `cvs update' to get a new copy. The meaning
is not precisely the same; removing and updating may also bring in
some changes which have been made in the repository since the last
time you updated.
When using client/server CVS, you can use the `cvs edit' and `cvs
unedit' commands even if CVS is unable to successfully communicate with
the server; the notifications will be sent upon the next successful CVS
command.