Setting a watch Watches Editing files
You can tell CVS that you want to receive
notifications about various actions taken on a file.
You can do this without using cvs watch on
for
the file, but generally you will want to use cvs watch on
, so that developers use the cvs edit
command.
-a
action] [-lR
] files ...
Add the current user to the list of people to receive notification of work done on files.
The -a
option specifies what kinds of events CVS should notify
the user about. action is one of the following:
edit
|
Another user has applied the |
unedit
|
Another user has applied the |
commit
|
Another user has committed changes to a file. |
all
|
All of the above. |
none
|
None of the above. (This is useful with |
The -a
option may appear more than once, or not at all. If
omitted, the action defaults to all
.
The files and options are processed as for the
cvs watch
commands.
-a
action] [-lR
] files ...
Remove a notification request established using cvs watch add
;
the arguments are the same. If the -a
option is present, only
watches for the specified actions are removed.
When the conditions exist for notification, CVS
calls the `notify
' administrative file. Edit
`notify
' as one edits the other administrative
files (see Intro administrative files). This
file follows the usual conventions for administrative
files (see syntax), where each line is a regular
expression followed by a command to execute. The
command should contain a single ocurrence of `%s
'
which will be replaced by the user to notify; the rest
of the information regarding the notification will be
supplied to the command on standard input. The
standard thing to put in the notify
file is the
single line:
ALL mail %s -s \"CVS notification\"
This causes users to be notified by electronic mail.
Note that if you set this up in the straightforward
way, users receive notifications on the server machine.
One could of course write a `notify
' script which
directed notifications elsewhere, but to make this
easy, CVS allows you to associate a notification
address for each user. To do so create a file
`users
' in `CVSROOT
' with a line for each
user in the format user:value. Then
instead of passing the name of the user to be notified
to `notify
', CVS will pass the value
(normally an email address on some other machine).
CVS does not notify you for your own changes. Currently this check is done based on whether the user name of the person taking the action which triggers notification matches the user name of the person getting notification. In fact, in general, the watches features only track one edit by each user. It probably would be more useful if watches tracked each working directory separately, so this behavior might be worth changing.
Setting a watch Watches Editing files