[BACK]Return to cvs.1 CVS log [TXT][DIR] Up to [local] / src / usr.bin / cvs

Annotation of src/usr.bin/cvs/cvs.1, Revision 1.34

1.34    ! xsa         1: .\"    $OpenBSD: cvs.1,v 1.33 2005/01/27 16:37:23 xsa Exp $
1.1       jfb         2: .\"
                      3: .\" Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org>
                      4: .\" All rights reserved.
                      5: .\"
                      6: .\" Redistribution and use in source and binary forms, with or without
                      7: .\" modification, are permitted provided that the following conditions
                      8: .\" are met:
                      9: .\"
                     10: .\" 1. Redistributions of source code must retain the above copyright
                     11: .\"    notice, this list of conditions and the following disclaimer.
                     12: .\" 2. The name of the author may not be used to endorse or promote products
                     13: .\"    derived from this software without specific prior written permission.
                     14: .\"
                     15: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
                     16: .\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
                     17: .\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
                     18: .\" THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
                     19: .\" EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLUDING, BUT NOT LIMITED TO,
                     20: .\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
                     21: .\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
                     22: .\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
                     23: .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
                     24: .\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     25: .\"
                     26: .Dd May 16, 2004
                     27: .Dt CVS 1
                     28: .Os
                     29: .Sh NAME
                     30: .Nm cvs
1.3       jfb        31: .Nd OpenCVS Concurrent Versioning System client
1.1       jfb        32: .Sh SYNOPSIS
                     33: .Nm
1.15      jmc        34: .Op Fl flQqtv
1.1       jfb        35: .Op Fl d Ar root
                     36: .Op Fl e Ar editor
1.20      jmc        37: .Xo
                     38: .Oo Fl s
                     39: .Ar var Ns = Ns Ar val Oc
                     40: .Xc
1.15      jmc        41: .Op Fl z Ar level
1.1       jfb        42: .Ar command Op Ar ...
                     43: .Sh DESCRIPTION
                     44: The
                     45: .Nm
                     46: program acts as both client and server for the use of and administration of
                     47: a CVS source repository.
                     48: CVS is used to maintain version information on files that are kept in a
                     49: repository.
                     50: Although it is more commonly used to track changes in source code, there
                     51: are no real limitations to the type of files that you can store in a
                     52: repository.
                     53: .Pp
1.7       jfb        54: Unless the
                     55: .Fl f
                     56: option is specified,
                     57: .Nm
                     58: reads its startup configuration file
                     59: .Pa .cvsrc
                     60: from the home directory of the user who invoked it.
                     61: This file is used to specify implicit options passed to
                     62: .Nm
                     63: or one of its commands whenever it is invoked.
1.16      jmc        64: See
                     65: .Xr cvsrc 5
                     66: for further information.
1.7       jfb        67: .Pp
1.1       jfb        68: The following options are supported:
1.15      jmc        69: .Bl -tag -width "-e editorXX"
1.1       jfb        70: .It Fl d Ar root
                     71: Use
                     72: .Ar root
                     73: as the path to the root directory of the CVS repository.
                     74: The value must specify an absolute path.
                     75: .It Fl e Ar editor
                     76: Use the program
                     77: .Ar editor
                     78: whenever editing log information.
1.8       jmc        79: This option overrides the environment variables CVSEDITOR, VISUAL, and EDITOR.
1.1       jfb        80: .It Fl f
1.7       jfb        81: Do not read the user's configuration file on startup.
1.1       jfb        82: .It Fl l
                     83: Suppress logging of history information.
                     84: .It Fl Q
                     85: Be extra quiet.
                     86: Only error messages will be displayed.
                     87: .It Fl q
                     88: Be quiet about reporting.
1.20      jmc        89: .It Fl s Ar var Ns = Ns Ar val
                     90: Set the value of the internal variable
                     91: .Ar var
                     92: to the string
                     93: .Ar val .
1.15      jmc        94: .It Fl t
                     95: Trace program execution.
1.1       jfb        96: .It Fl v
                     97: Display version information and exit.
1.15      jmc        98: .It Fl z Ar level
                     99: Specify the compression level to
                    100: .Xr gzip 1
                    101: when transferring files.
                    102: The compression level ranges from 1 to 9,
                    103: with 1 being the fastest,
                    104: and 9 providing the best level of compression.
                    105: The default is 6.
1.1       jfb       106: .El
                    107: .Sh COMMANDS
1.3       jfb       108: The following commands are supported by
                    109: .Nm .
1.7       jfb       110: .Bl -tag -width "xxxxxxxxxxxx"
1.11      jmc       111: .It Xo Ic add Op Fl m Ar msg
1.1       jfb       112: .Ar file Op ...
1.3       jfb       113: .Xc
1.7       jfb       114: .Pp
1.1       jfb       115: Before a file is known to CVS, it must be added to the repository using
                    116: this command.
                    117: Adding a file does not actually publish the contents of the
1.7       jfb       118: file, so you must
1.11      jmc       119: .Ic commit
1.7       jfb       120: the first revision in order to let other users see the file with the
1.11      jmc       121: .Ic update
1.4       jfb       122: or
1.11      jmc       123: .Ic checkout
1.4       jfb       124: commands.
1.1       jfb       125: .Pp
1.7       jfb       126: Although adding a file does not involve a log message, it is possible to
                    127: specify one to include with the action, using the
                    128: .Fl m
                    129: option.
1.13      jmc       130: .Pp
                    131: Aliases:
                    132: .Ic ad ,
                    133: .Ic new .
                    134: .It Ic admin
                    135: Administration front-end for
                    136: .Xr rcs 1 .
                    137: .Pp
                    138: Aliases:
                    139: .Ic adm ,
                    140: .Ic rcs .
1.26      xsa       141: .It Xo Ic annotate
                    142: .Op Fl flR
                    143: .Oo Fl D Ar date \*(Ba
                    144: .Fl r Ar rev Oc
                    145: .Op Ar file ...
                    146: .Xc
                    147: .Pp
1.23      xsa       148: For each line of any files specified, show information about its
                    149: last revision.
                    150: The information given is the last revision when a modification occurred,
                    151: the author's name, and the date of the revision.
1.26      xsa       152: .Pp
                    153: The
                    154: .Fl f
                    155: flag is used to force the use of the head revision if the specified
                    156: tag or date is not found.
                    157: This can be used in combination with
                    158: .Fl D
                    159: or
                    160: .Fl r
                    161: to ensure that there is some output from the
                    162: .Ic annotate
                    163: command, even if only to show Revision 1.1 of the file.
                    164: The
                    165: .Fl l
                    166: flag is used to limit the scope of the search to the local directory
                    167: only and to disable recursive behaviour, which can be requested with the
                    168: .Fl R
                    169: flag.
                    170: The
                    171: .Fl D
                    172: flag shows the annotations as of the latest revision no later than
                    173: .Ar date .
                    174: The
                    175: .Fl r
                    176: flag shows annotations as of revision
                    177: .Ar rev
                    178: (can be a revision number or a tag).
1.13      jmc       179: .Pp
                    180: Aliases:
                    181: .Ic ann .
1.11      jmc       182: .It Xo Ic checkout
1.7       jfb       183: .Op Fl c
                    184: .Op Ar module ...
                    185: .Xc
                    186: .Pp
                    187: The
1.11      jmc       188: .Ic checkout
1.7       jfb       189: command is used to create a local copy of one or more modules present on the
                    190: target CVS repository.
1.13      jmc       191: .Pp
                    192: Aliases:
                    193: .Ic co ,
                    194: .Ic get .
1.11      jmc       195: .It Xo Ic commit
1.3       jfb       196: .Op Fl flnR
1.27      xsa       197: .Oo Fl F Ar logfile \*(Ba
                    198: .Fl m Ar msg Oc
1.3       jfb       199: .Op Fl r Ar rev
1.4       jfb       200: .Op Ar file ...
1.3       jfb       201: .Xc
1.7       jfb       202: .Pp
1.1       jfb       203: The
1.11      jmc       204: .Ic commit
1.1       jfb       205: command is used to send local changes back to the server and update the
                    206: repository's information to reflect the changes.
1.27      xsa       207: .Pp
                    208: The
                    209: .Fl l
                    210: flag is used to limit the scope of the search to the local directory only.
                    211: Sometimes one might want to force a file to be committed, even though
                    212: it is unchanged: this can be done using the
                    213: .Fl f
                    214: flag, which also has the effect of disabling recursive behaviour,
                    215: which can be requested with the
                    216: .Fl R
                    217: flag.
                    218: When using the
                    219: .Fl n
                    220: flag, programs listed in the CVSROOT/modules file do not get executed.
                    221: The
                    222: .Fl m
                    223: flag can be used to specify a log message on the command line which
                    224: suppresses the editor invocation, or use the
                    225: .Fl F
                    226: flag to specify a
                    227: .Ar file
                    228: as argument which contains the log message.
                    229: The
                    230: .Fl r
                    231: flag can be used to commit to a particular symbolic or numerical revision.
1.13      jmc       232: .Pp
                    233: Aliases:
                    234: .Ic ci ,
                    235: .Ic com .
1.24      jfb       236: .It Xo Ic diff Op Fl cilNpu
1.3       jfb       237: .Op Fl D Ar date
                    238: .Op Fl r Ar rev
1.4       jfb       239: .Op Ar file ...
1.3       jfb       240: .Xc
1.7       jfb       241: .Pp
1.3       jfb       242: The
1.11      jmc       243: .Ic diff
1.3       jfb       244: command is very similar to the
                    245: .Xr diff 1
1.5       jfb       246: program, except that the differential comparisons that it generates are
1.3       jfb       247: between local or remote revisions of files stored in the CVS repository.
1.13      jmc       248: .Pp
                    249: Aliases:
                    250: .Ic di ,
                    251: .Ic dif .
1.30      xsa       252: .It Xo Ic edit Op Fl lR
                    253: .Op Fl a Ar action
                    254: .Op Ar file ...
                    255: .Xc
                    256: .Pp
                    257: The
                    258: .Ic edit
                    259: command is used to make a file that is being watched (read-only)
                    260: readable and writable and to inform others that you are planning to edit it.
                    261: Notifications terminate when the
                    262: .Ic commit
                    263: command is issued.
                    264: Editing rights on the file can be given up using the
                    265: .Ic unedit
                    266: command.
                    267: This command terminates the temporary notifications.
                    268: .Pp
                    269: The
                    270: .Fl l
                    271: flag is used to limit the scope of the search to the local directory
                    272: only and to disable recursive behaviour, which can be requested with the
                    273: .Fl R
                    274: flag.
                    275: The
                    276: .Fl a
                    277: flag specifies the temporary notification wanted:
                    278: .Bl -tag -width "commitXX"
                    279: .It Cm commit
                    280: Another user has committed changes to the
                    281: .Ar file .
                    282: .It Cm edit
                    283: Another user has issued the
                    284: .Ic edit
                    285: command on the
                    286: .Ar file .
                    287: .It Cm unedit
                    288: Another user has issued the
                    289: .Ic unedit
                    290: command on the
                    291: .Ar file .
                    292: .It Cm all
                    293: All of the above.
                    294: .It Cm none
                    295: None of the above.
                    296: .El
                    297: .Pp
                    298: The
                    299: .Fl a
                    300: flag may appear more than once, or not at all.
                    301: If omitted, the action defaults to
1.31      jmc       302: .Cm all .
1.33      xsa       303: .It Xo Ic editors
                    304: .Op Fl lR
1.34    ! xsa       305: .Op Ar file ...
1.33      xsa       306: .Xc
                    307: .Pp
                    308: The
                    309: .Ic editors
                    310: command lists the users with edition rights on a file.
                    311: For that, pseudo-lock mode must be enabled (see the
                    312: .Ic watch
                    313: command).
                    314: The e-mail address of the user editing the file, the timestamp
                    315: when the edition first started, the host from where the edition
                    316: has been requested and the path to the edited file are listed.
                    317: .Pp
                    318: The
                    319: .Fl l
                    320: flag is used to limit the scope of the search to the local directory
                    321: only and to disable recursive behaviour, which can be requested with the
                    322: .Fl R
                    323: flag.
1.13      jmc       324: .It Ic export
                    325: Export sources from CVS;
                    326: similar to
                    327: .Ic checkout .
                    328: .Pp
                    329: Aliases:
                    330: .Ic ex ,
                    331: .Ic exp .
                    332: .It Ic history
                    333: Show repository access history.
                    334: .Pp
                    335: Aliases:
                    336: .Ic hi ,
                    337: .Ic his .
1.22      jmc       338: .It Xo Ic import
                    339: .Op Fl b Ar branch
                    340: .Op Fl m Ar msg
                    341: .Ar repository
                    342: .Ar vendortag
                    343: .Ar releasetag
                    344: .Xc
                    345: .Pp
1.13      jmc       346: Import sources into CVS using vendor branches.
1.22      jmc       347: .Pp
                    348: The
                    349: .Fl b
                    350: flag specifies the first-level branch number.
                    351: The
                    352: .Fl m
                    353: flag specifies the log message to send.
                    354: .Pp
                    355: At least three arguments are required:
                    356: .Ar repository
                    357: specifies the location of the sources to be imported;
                    358: .Ar vendortag
                    359: is a tag for the entire branch;
                    360: .Ar releasetag
                    361: is used to identify the files you created with
                    362: .Nm
                    363: .Ic import .
1.13      jmc       364: .Pp
                    365: Aliases:
                    366: .Ic im ,
                    367: .Ic imp .
                    368: .It Ic init
                    369: Create a CVS repository if it doesn't exist.
                    370: .It Ic kserver
                    371: Start a Kerberos authentication server.
                    372: .It Ic log
                    373: Print out history information for files.
                    374: .Pp
                    375: Aliases:
                    376: .Ic lo .
                    377: .It Ic login
                    378: Prompt for password for authenticating server.
                    379: .It Ic logout
                    380: Remove entry in .cvspass for remote repository.
                    381: .It Ic rdiff
                    382: Create
                    383: .Xr patch 1
                    384: format diffs between releases.
                    385: .It Ic release
                    386: Indicate that a module is no longer in use.
1.18      xsa       387: .It Xo Ic remove
                    388: .Op Fl flR
                    389: .Op Ar file ...
                    390: .Xc
                    391: The
                    392: .Ic remove
                    393: command is used to inform
                    394: .Nm
                    395: that
                    396: .Ar file
                    397: is scheduled to be removed from the repository.
                    398: Files are not actually removed from the repository until the
                    399: .Ic commit
                    400: command has been run subsequently.
1.28      xsa       401: .Pp
                    402: The
                    403: .Fl f
                    404: flag locally removes the file.
                    405: If this flag is not used, the file must be locally removed beforehand for
                    406: the command to be valid.
                    407: The
                    408: .Fl l
                    409: flag is used to limit the scope of the search to the local directory
                    410: only and to disable recursive behaviour, which can be requested with the
                    411: .Fl R
                    412: flag.
1.18      xsa       413: .Pp
                    414: Aliases:
1.19      xsa       415: .Ic rm ,
                    416: .Ic delete .
1.13      jmc       417: .It Ic rlog
                    418: Print out history information for a module.
                    419: .It Ic rtag
                    420: Add a symbolic link to a module.
                    421: .It Ic server
                    422: Server mode.
1.25      xsa       423: .It Xo Ic status
                    424: .Op Fl lRv
                    425: .Op Ar file ...
                    426: .Xc
                    427: The
                    428: .Ic status
                    429: command is used to display the state of checked out files.
                    430: .Pp
                    431: The
                    432: .Fl l
                    433: flag is used to limit the scope of the search to the local directory
                    434: only and to disable recursive behaviour, which can be requested with the
                    435: .Fl R
                    436: flag.
                    437: The
                    438: .Fl v
                    439: flag causes the symbolic tags for the file to be displayed.
                    440: .Pp
                    441: The following are the different possible states:
                    442: .Bl -tag -width "Unresolved ConflictXX"
                    443: .It Cm Locally Added
                    444: The file has been added with the
                    445: .Ic add
                    446: command, but has not been committed to the repository with the
                    447: .Ic commit
                    448: command.
                    449: .It Cm Locally Modified
                    450: The file is up to date, but has been locally modified since then.
                    451: .It Cm Locally Removed
                    452: The file has been removed with the
                    453: .Ic remove
                    454: command, but has not been committed to the repository with the
                    455: .Ic commit
                    456: command.
                    457: .It Cm Needs Checkout
                    458: The file has not been modified; a new version is available.
                    459: .It Cm Needs Merge
                    460: The file has been modified and a newer version is available.
                    461: A merge is necessary.
                    462: .It Cm Needs Patch
                    463: Same as
                    464: .Ic Needs Checkout
                    465: but, in client-server mode, only the differences are sent to save
                    466: network resources.
                    467: .It Cm Unresolved Conflict
                    468: A merge has been done, but unresolved conflicts still remain.
                    469: .It Cm Up-to-date
                    470: The file is up to date.
                    471: .El
1.13      jmc       472: .Pp
                    473: Aliases:
                    474: .Ic st ,
                    475: .Ic stat .
1.21      jmc       476: .It Xo Ic tag
                    477: .Op Fl bdl
                    478: .Op Fl r Ar old_tag
                    479: .Op Ar symbolic_tag
                    480: .Op Ar file ...
                    481: .Xc
                    482: .Pp
                    483: Add a symbolic tag to a checked out version of
                    484: .Ar file .
                    485: .Pp
                    486: The
                    487: .Fl b
                    488: flag is used to specify a branch tag.
                    489: If the
                    490: .Fl d
                    491: flag is specified the tag will be deleted.
                    492: The
                    493: .Fl l
                    494: flag is used to specify a local change only and disables the recursive
                    495: behaviour.
                    496: If the
                    497: .Fl r
                    498: flag is used,
                    499: .Nm
                    500: will only tag the files with
                    501: .Ar symbolic_tag
                    502: if they are already tagged with
                    503: .Ar old_tag .
                    504: When done, it will remove the old tag
                    505: leaving only the new tag behind on exactly the same files.
1.13      jmc       506: .Pp
                    507: Aliases:
                    508: .Ic ta ,
                    509: .Ic freeze .
1.30      xsa       510: .It Xo Ic unedit Op Fl lR
                    511: .Op Ar file ...
                    512: .Xc
                    513: .Pp
                    514: The
                    515: .Ic unedit
                    516: command is used to give up an edition on a file and thus cancel
                    517: the wanted temporary notifications.
                    518: If the file has been modified since the
1.13      jmc       519: .Ic edit
1.30      xsa       520: command has been issued,
                    521: .Nm
                    522: will ask if you want to go back to the previous version, and lose the
                    523: modifications done on the file, or stay in edition mode on it.
                    524: .Pp
                    525: The
                    526: .Fl l
                    527: flag is used to limit the scope of the search to the local directory
                    528: only and to disable recursive behaviour, which can be requested with the
                    529: .Fl R
                    530: flag.
1.11      jmc       531: .It Xo Ic update
1.3       jfb       532: .Op Fl ACdP
1.4       jfb       533: .Op Ar file ...
1.3       jfb       534: .Xc
1.7       jfb       535: .Pp
1.3       jfb       536: The
1.11      jmc       537: .Ic update
1.17      david     538: command is used to merge any of the changes that have occurred on the remote
1.3       jfb       539: repository into the local one where the command was run.
                    540: .Pp
                    541: The
                    542: .Fl A
1.8       jmc       543: flag resets any sticky tags, dates, or kopts that have been set on the tree.
1.3       jfb       544: The
                    545: .Fl l
                    546: flag is used to specify a local change only and disables the recursive
                    547: behaviour.
                    548: The
                    549: .Fl P
                    550: flag causes
                    551: .Nm
                    552: to prune any directories that have become empty as a result of the update.
1.29      xsa       553: .Pp
                    554: For each file updated, a single letter prefix is given to
                    555: specify the state of the file.
                    556: The possible prefixes are as follows:
                    557: .Bl -tag -width "XXX"
                    558: .It \&?
                    559: The file is unknown to
                    560: .Nm .
                    561: .It A
                    562: The file has been added with the
                    563: .Ic add
                    564: command, but has not been committed to the repository with the
                    565: .Ic commit
                    566: command.
                    567: .It C
                    568: A merge, with a more recent version of the file, has been done,
                    569: but unresolved conflicts still remain.
                    570: .It M
                    571: The file has been locally modified; if a more recent version
                    572: is available, the merge has been done without conflict.
                    573: .It P
                    574: The same as
                    575: .Sq U ,
                    576: but, in client-server mode, only differences are sent to save network
                    577: resources.
                    578: .It R
                    579: The file has been removed with the
                    580: .Ic remove
                    581: command, but has not been committed to the repository with the
                    582: .Ic commit
                    583: command.
                    584: .It U
                    585: The file is up to date.
                    586: .El
1.13      jmc       587: .Pp
                    588: Aliases:
                    589: .Ic up ,
                    590: .Ic upd .
1.11      jmc       591: .It Ic version
1.3       jfb       592: Causes
                    593: .Nm
                    594: to print its version information.
1.14      jfb       595: If this command is issued within a local copy of a remote repository or
                    596: if either the
                    597: .Ev CVSROOT
                    598: environment variable or the
                    599: .Fl d
                    600: flag specify a remote repository,
1.3       jfb       601: .Nm
                    602: will also connect to the server and ask it to print its version information.
1.13      jmc       603: .Pp
                    604: Aliases:
                    605: .Ic ve ,
                    606: .Ic ver .
1.32      xsa       607: .It Xo Ic watch
                    608: .Ar on | off | add | remove
                    609: .Op Fl lR
                    610: .Op Fl a Ar action
                    611: .Op Ar file ...
                    612: .Xc
                    613: .Pp
                    614: The
                    615: .Ic watch
                    616: command switches a file from normal mode to
                    617: pseudo-lock mode as well as handling the notifications associated
                    618: with it.
                    619: Pseudo-lock mode means knowing who is editing a file:
                    620: for that,
                    621: .Nm
                    622: extracts the file in read-only mode.
                    623: Users must use the
                    624: .Ic edit
                    625: command to get the editing rights on the file.
                    626: .Pp
                    627: One of the following arguments to the
                    628: .Ic watch
                    629: command is mandatory: on, off, add, or remove.
                    630: .Ar on
                    631: switches the file into pseudo-lock mode;
                    632: .Ar off
                    633: switches it back to normal mode;
                    634: .Ar add
                    635: adds notifications for specific actions on the file;
                    636: .Ar remove
                    637: removes those notifications.
                    638: .Pp
                    639: The notifications are permanent.
                    640: They remain in place until the
                    641: .Ic watch remove
                    642: command is issued while the temporary notifications are
                    643: made available with the
                    644: .Ic edit
                    645: command.
                    646: .Pp
                    647: The
                    648: .Fl l
                    649: flag is used to limit the scope of the search to the local directory
                    650: only and to disable recursive behaviour, which can be requested with the
                    651: .Fl R
                    652: flag.
                    653: The
                    654: .Fl a
                    655: flag specifies the permanent notification wanted for
                    656: .Ar add | remove :
                    657: .Pp
                    658: .Bl -tag -width "commitXX" -compact
                    659: .It Cm commit
                    660: Another user has committed changes to the
                    661: .Ar file .
                    662: .It Cm edit
                    663: Another user is editing the
                    664: .Ar file .
                    665: .It Cm unedit
                    666: Another user has finished editing the
                    667: .Ar file .
                    668: .It Cm all
                    669: All of the above.
                    670: .It Cm none
                    671: No notification.
                    672: .El
                    673: .Pp
                    674: If no speficiation is requested using the
                    675: .Ar add
                    676: or
                    677: .Ar remove
                    678: arguments, it implies the
                    679: .Fl a Ar all
                    680: option.
                    681: .It Xo Ic watchers
                    682: .Op Fl lR
                    683: .Op Ar file ...
                    684: .Xc
                    685: .Pp
                    686: The
                    687: .Ic watchers
                    688: command lists the users who asked for notifications as well as the
                    689: notifications details.
                    690: The possible notifications are as follows:
                    691: .Bl -tag -width "tcommitXX"
                    692: .It Cm commit
                    693: Permanent watch of a commit of a new version of a file.
                    694: .It Cm edit
                    695: Permanent watch of the start of file edition.
                    696: .It Cm tcommit
                    697: Temporary watch of a commit of new version of a file.
                    698: .It Cm tedit
                    699: Temporary watch of the start of file edition.
                    700: .It Cm tunedit
                    701: Temporary watch of the end of file edition.
                    702: .It Cm unedit
                    703: Permanent watch of the end of file edition.
                    704: .El
                    705: .Pp
                    706: The
                    707: .Fl l
                    708: flag is used to limit the scope of the search to the local directory
                    709: only and to disable recursive behaviour, which can be requested with the
                    710: .Fl R
                    711: flag.
                    712: .Pp
                    713: The temporary watches are set using the
                    714: .Ic edit
                    715: command, until the
                    716: .Ic commit
                    717: or
                    718: .Ic unedit
                    719: command is issued on the
                    720: .Ar file .
1.1       jfb       721: .El
                    722: .Sh ENVIRONMENT
                    723: .Bl -tag -width CVS_CLIENT_LOG
1.8       jmc       724: .It Ev CVS_CLIENT_LOG
                    725: This variable enables logging of all communications between the client and
                    726: server when running in non-local mode.
                    727: If set, this environment variable must contain a base path from which two
                    728: paths will be generated by appending ".in" to the value for the server's
                    729: input and ".out" for the server's output.
1.1       jfb       730: .It Ev CVS_RSH
                    731: Name of the program to use when connecting to the server through a remote
                    732: shell.
                    733: The default is to use the
                    734: .Xr ssh 1
                    735: program.
                    736: .It Ev CVS_SERVER
                    737: If set, gives the name of the program to invoke as a
                    738: .Nm
                    739: server when using remote shell.
                    740: The default is to use `cvs'.
                    741: .It Ev CVSEDITOR
                    742: Name of the editor to use when editing commit messages.
1.8       jmc       743: Checked before
                    744: .Ev EDITOR
                    745: and
                    746: .Ev VISUAL .
                    747: .It Ev CVSROOT
                    748: When set, this variable should contain the string pointing to the root
                    749: directory of the CVS repository.
                    750: The contents of this variable are ignored when the
                    751: .Fl d
                    752: option is given or if `Root' files exist in the checked-out copy.
1.1       jfb       753: .It Ev EDITOR
1.9       jmc       754: Name of the editor to use when editing commit messages.
                    755: This is traditionally a line-oriented editor,
                    756: such as
                    757: .Xr ex 1 .
1.1       jfb       758: .It Ev VISUAL
1.9       jmc       759: Name of the editor to use when editing commit messages.
                    760: This is traditionally a screen-oriented editor,
                    761: such as
                    762: .Xr vi 1 .
1.8       jmc       763: .El
                    764: .Sh FILES
                    765: .Bl -tag -width Ds
                    766: .It Pa $HOME/.cvsrc
                    767: File containing a list of implicit options to pass to certain commands.
                    768: This file is read on startup unless the
                    769: .Fl f
                    770: option is specified.
                    771: .It Pa $CVSROOT/CVSROOT
                    772: Directory containing repository administrative files.
                    773: .It Pa $CVSROOT/CVSROOT/loginfo
                    774: File containing associations between modules and handlers for
                    775: post-commit logging.
1.1       jfb       776: .El
                    777: .Sh SEE ALSO
                    778: .Xr diff 1 ,
1.15      jmc       779: .Xr gzip 1 ,
1.1       jfb       780: .Xr patch 1 ,
1.8       jmc       781: .Xr rcs 1 ,
1.16      jmc       782: .Xr cvsrc 5 ,
1.1       jfb       783: .Xr cvsd 8
1.8       jmc       784: .Sh HISTORY
                    785: The OpenCVS project is a BSD-licensed rewrite of the original
                    786: Concurrent Versioning System written by Jean-Francois Brousseau.
                    787: The original CVS code was written in large parts by Dick Grune,
                    788: Brian Berliner and Jeff Polk.
                    789: .Sh AUTHORS
                    790: .An Jean-Francois Brousseau
                    791: .An Vincent Labrecque
                    792: .An Joris Vink
1.2       jfb       793: .Sh CAVEATS
                    794: This CVS implementation does not fully conform to the GNU CVS version.
1.3       jfb       795: In some cases, this was done explicitly because GNU CVS has inconsistencies
1.2       jfb       796: or ambiguous behaviour.
1.3       jfb       797: Some things have also been left out or modified to enhance the overall
                    798: security of the system.
                    799: .Pp
                    800: Among other things, support for the pserver connection mechanism has been
                    801: dropped because of security issues with the authentication mechanism.