[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.7

1.3       jfb         1: .\"    $OpenBSD$
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
                     34: .Op Fl flQqv
                     35: .Op Fl d Ar root
                     36: .Op Fl e Ar editor
                     37: .Ar command Op Ar ...
                     38: .Sh DESCRIPTION
                     39: The
                     40: .Nm
                     41: program acts as both client and server for the use of and administration of
                     42: a CVS source repository.
                     43: CVS is used to maintain version information on files that are kept in a
                     44: repository.
                     45: Although it is more commonly used to track changes in source code, there
                     46: are no real limitations to the type of files that you can store in a
                     47: repository.
                     48: .Pp
1.7     ! jfb        49: Unless the
        !            50: .Fl f
        !            51: option is specified,
        !            52: .Nm
        !            53: reads its startup configuration file
        !            54: .Pa .cvsrc
        !            55: from the home directory of the user who invoked it.
        !            56: This file is used to specify implicit options passed to
        !            57: .Nm
        !            58: or one of its commands whenever it is invoked.
        !            59: Each command should be specified on a separate line along with the arguments.
        !            60: For example, the following two lines:
        !            61: .Pp
        !            62: .Bl -item -compact -offset indent
        !            63: .It
        !            64: cvs -q
        !            65: .It
        !            66: diff -u
        !            67: .El
        !            68: .Pp
        !            69: specify that
        !            70: .Nm
        !            71: should always run in quiet mode and the
        !            72: .Sy diff
        !            73: command should always produce unified output.
        !            74: .Pp
1.1       jfb        75: The following options are supported:
                     76: .Bl -tag -width Ds
                     77: .It Fl d Ar root
                     78: Use
                     79: .Ar root
                     80: as the path to the root directory of the CVS repository.
                     81: The value must specify an absolute path.
                     82: .It Fl e Ar editor
                     83: Use the program
                     84: .Ar editor
                     85: whenever editing log information.
                     86: This option overrides the environment variables CVSEDITOR, VISUAL and EDITOR.
                     87: .It Fl f
1.7     ! jfb        88: Do not read the user's configuration file on startup.
1.1       jfb        89: .It Fl l
                     90: Suppress logging of history information.
                     91: .It Fl Q
                     92: Be extra quiet.
                     93: Only error messages will be displayed.
                     94: .It Fl q
                     95: Be quiet about reporting.
                     96: .It Fl v
                     97: Display version information and exit.
                     98: .El
                     99: .Sh COMMANDS
1.3       jfb       100: The following commands are supported by
                    101: .Nm .
1.7     ! jfb       102: .Bl -tag -width "xxxxxxxxxxxx"
1.3       jfb       103: .It Xo Sy add Op Fl m Ar msg
1.1       jfb       104: .Ar file Op ...
1.3       jfb       105: .Xc
1.7     ! jfb       106: .Pp
1.1       jfb       107: Before a file is known to CVS, it must be added to the repository using
                    108: this command.
                    109: Adding a file does not actually publish the contents of the
1.7     ! jfb       110: file, so you must
        !           111: .Sy commit
        !           112: the first revision in order to let other users see the file with the
1.3       jfb       113: .Sy update
1.4       jfb       114: or
                    115: .Sy checkout
                    116: commands.
1.1       jfb       117: .Pp
1.7     ! jfb       118: Although adding a file does not involve a log message, it is possible to
        !           119: specify one to include with the action, using the
        !           120: .Fl m
        !           121: option.
        !           122: .Pp
        !           123: .It Xo Sy checkout
        !           124: .Op Fl c
        !           125: .Op Ar module ...
        !           126: .Xc
        !           127: .Pp
        !           128: The
        !           129: .Sy checkout
        !           130: command is used to create a local copy of one or more modules present on the
        !           131: target CVS repository.
        !           132: .Pp
1.3       jfb       133: .It Xo Sy commit
                    134: .Op Fl flnR
1.1       jfb       135: .Op Fl m Ar msg
1.3       jfb       136: .Op Fl F Ar logfile
                    137: .Op Fl r Ar rev
1.4       jfb       138: .Op Ar file ...
1.3       jfb       139: .Xc
1.7     ! jfb       140: .Pp
1.1       jfb       141: The
1.3       jfb       142: .Sy commit
1.1       jfb       143: command is used to send local changes back to the server and update the
                    144: repository's information to reflect the changes.
                    145: .Pp
1.3       jfb       146: .It Xo Sy diff Op Fl cilu
                    147: .Op Fl D Ar date
                    148: .Op Fl r Ar rev
1.4       jfb       149: .Op Ar file ...
1.3       jfb       150: .Xc
1.7     ! jfb       151: .Pp
1.3       jfb       152: The
                    153: .Sy diff
                    154: command is very similar to the
                    155: .Xr diff 1
1.5       jfb       156: program, except that the differential comparisons that it generates are
1.3       jfb       157: between local or remote revisions of files stored in the CVS repository.
                    158: .It Xo Sy update
                    159: .Op Fl ACdP
1.4       jfb       160: .Op Ar file ...
1.3       jfb       161: .Xc
1.7     ! jfb       162: .Pp
1.3       jfb       163: The
                    164: .Sy update
                    165: command is used to merge any of the changes that have occured on the remote
                    166: repository into the local one where the command was run.
                    167: .Pp
                    168: The
                    169: .Fl A
                    170: flag resets any sticky tags, dates or kopts that have been set on the tree.
                    171: The
                    172: .Fl l
                    173: flag is used to specify a local change only and disables the recursive
                    174: behaviour.
                    175: The
                    176: .Fl P
                    177: flag causes
                    178: .Nm
                    179: to prune any directories that have become empty as a result of the update.
                    180: .It Sy version
                    181: Causes
                    182: .Nm
                    183: to print its version information.
                    184: If this command is issued within a local copy of a repository located on
                    185: an other machine,
                    186: .Nm
                    187: will also connect to the server and ask it to print its version information.
1.1       jfb       188: .El
                    189: .Sh FILES
                    190: .Bl -tag -width Ds
                    191: .It Pa $HOME/.cvsrc
                    192: File containing a list of implicit options to pass to certain commands.
                    193: This file is read on startup unless the
                    194: .Fl f
                    195: option is specified.
                    196: .It Pa $CVSROOT/CVSROOT
                    197: Directory containing repository administrative files.
                    198: .It Pa $CVSROOT/CVSROOT/loginfo
                    199: File containing associations between modules and handlers for
                    200: post-commit logging.
                    201: .El
                    202: .Sh ENVIRONMENT
                    203: .Bl -tag -width CVS_CLIENT_LOG
                    204: .It Ev CVSROOT
                    205: When set, this variable should contain the string pointing to the root
                    206: directory of the CVS repository.
                    207: The contents of this variable are ignored when the
                    208: .Fl d
                    209: option is given or if `Root' files exist in the checked-out copy.
                    210: .It Ev CVS_RSH
                    211: Name of the program to use when connecting to the server through a remote
                    212: shell.
                    213: The default is to use the
                    214: .Xr ssh 1
                    215: program.
                    216: .It Ev CVS_SERVER
                    217: If set, gives the name of the program to invoke as a
                    218: .Nm
                    219: server when using remote shell.
                    220: The default is to use `cvs'.
                    221: .It Ev CVSEDITOR
                    222: Name of the editor to use when editing commit messages.
                    223: Checked before EDITOR and VISUAL.
                    224: .It Ev EDITOR
                    225: .It Ev VISUAL
                    226: .It Ev CVS_CLIENT_LOG
                    227: This variable enables logging of all communications between the client and
                    228: server when running in non-local mode.
                    229: If set, this environment variable must contain a base path from which two
                    230: paths will be generated by appending ".in" to the value for the server's
                    231: input and ".out" for the server's output.
                    232: .El
                    233: .Sh SEE ALSO
                    234: .Xr rcs 1 ,
                    235: .Xr diff 1 ,
                    236: .Xr patch 1 ,
                    237: .Xr cvsd 8
1.2       jfb       238: .Sh CAVEATS
                    239: This CVS implementation does not fully conform to the GNU CVS version.
1.3       jfb       240: In some cases, this was done explicitly because GNU CVS has inconsistencies
1.2       jfb       241: or ambiguous behaviour.
1.3       jfb       242: Some things have also been left out or modified to enhance the overall
                    243: security of the system.
                    244: .Pp
                    245: Among other things, support for the pserver connection mechanism has been
                    246: dropped because of security issues with the authentication mechanism.
1.1       jfb       247: .Sh HISTORY
                    248: The OpenCVS project is a BSD-licensed rewrite of the original
                    249: Concurrent Versioning System written by Jean-Francois Brousseau.
                    250: The original CVS code was written in large parts by Dick Grune,
                    251: Brian Berliner and Jeff Polk.
1.2       jfb       252: .Sh AUTHORS
                    253: .An Jean-Francois Brousseau
                    254: .An Vincent Labrecque
1.6       jfb       255: .An Joris Vink