10.6.3 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 (see section Getting the source), an operation which those systems call a
get or a fetch.
- Command: cvs edit [
-lR
] [-a
action]… [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 the 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 with the command cvs update -C file
(see section update—Bring work tree in sync with repository).
The meaning is
not precisely the same; the latter 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.