summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/cvs/doc/cvsclient.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/cvs/doc/cvsclient.texi')
-rw-r--r--gnu/usr.bin/cvs/doc/cvsclient.texi80
1 files changed, 73 insertions, 7 deletions
diff --git a/gnu/usr.bin/cvs/doc/cvsclient.texi b/gnu/usr.bin/cvs/doc/cvsclient.texi
index 394c0cafb09..5ba7ed6b4eb 100644
--- a/gnu/usr.bin/cvs/doc/cvsclient.texi
+++ b/gnu/usr.bin/cvs/doc/cvsclient.texi
@@ -3,6 +3,11 @@
@setfilename cvsclient.info
@include CVSvn.texi
+@dircategory Programming
+@direntry
+* cvsclient: (cvsclient). The CVS client/server protocol.
+@end direntry
+
@node Top
@top CVS Client/Server
@@ -492,7 +497,7 @@ command line client (versions 1.5 through at least 1.9).
For the @samp{-d} option to the @code{log} request, servers should at
least support RFC 822/1123 format. Clients are encouraged to use this
-format too (traditionally the command line CVS client has just passed
+format too (the command line CVS client, version 1.10 and older, just passed
along the date format specified by the user, however).
The @code{Mod-time} response and @code{Checkin-time} request use RFC
@@ -537,16 +542,19 @@ in use, connection, authentication, etc., are already taken care of.
The @code{Root} request must be sent only once, and it must be sent
before any requests other than @code{Valid-responses},
-@code{valid-requests}, @code{UseUnchanged}, @code{Set} or @code{init}.
+@code{valid-requests}, @code{UseUnchanged}, @code{Set},
+@code{Global_option}, @code{init}, @code{noop}, or @code{version}.
@item Valid-responses @var{request-list} \n
Response expected: no.
Tell the server what responses the client will accept.
request-list is a space separated list of tokens.
+The @code{Root} request need not have been previously sent.
@item valid-requests \n
Response expected: yes.
Ask the server to send back a @code{Valid-requests} response.
+The @code{Root} request need not have been previously sent.
@item Directory @var{local-directory} \n
Additional data: @var{repository} \n. Response expected: no.
@@ -859,6 +867,7 @@ must not contain @samp{/}.
Response expected: no. To specify the version of the protocol described
in this document, servers must support this request (although it need
not do anything) and clients must issue it.
+The @code{Root} request need not have been previously sent.
@item Notify @var{filename} \n
Response expected: no.
@@ -950,6 +959,7 @@ strings, no variations (such as combining of options) are allowed. For
graceful handling of @code{valid-requests}, it is probably better to
make new global options separate requests, rather than trying to add
them to this request.
+The @code{Root} request need not have been previously sent.
@item Gzip-stream @var{level} \n
Response expected: no.
@@ -1007,6 +1017,7 @@ connection between the initial authentication and the
@item Set @var{variable}=@var{value} \n
Response expected: no.
Set a user variable @var{variable} to @var{value}.
+The @code{Root} request need not have been previously sent.
@item expand-modules \n
Response expected: yes. Expand the modules which are specified in the
@@ -1064,7 +1075,6 @@ directory.
@itemx diff \n
@itemx tag \n
@itemx status \n
-@itemx log \n
@itemx admin \n
@itemx history \n
@itemx watchers \n
@@ -1078,6 +1088,56 @@ of the operation. No provision is made for any input from the user.
This means that @code{ci} must use a @code{-m} argument if it wants to
specify a log message.
+@item log \n
+Response expected: yes. Show information for past revisions. This uses
+any previous @code{Directory}, @code{Entry}, or @code{Modified}
+requests, if they have been sent. The last @code{Directory} sent
+specifies the working directory at the time of the operation. Also uses
+previous @code{Argument}'s of which the canonical forms are the
+following (@sc{cvs} 1.10 and older clients sent what the user specified,
+but clients are encouraged to use the canonical forms and other forms
+are deprecated):
+
+@table @code
+@item -b, -h, -l, -N, -R, -t
+These options go by themselves, one option per @code{Argument} request.
+
+@item -d @var{date1}<@var{date2}
+Select revisions between @var{date1} and @var{date2}. Either date
+may be omitted in which case there is no date limit at that end of the
+range (clients may specify dates such as 1 Jan 1970 or 1 Jan 2038 for
+similar purposes but this is problematic as it makes assumptions about
+what dates the server supports). Dates are in RFC822/1123 format. The
+@samp{-d} is one @code{Argument} request and the date range is a second
+one.
+
+@item -d @var{date1}<=@var{date2}
+Likewise but compare dates for equality.
+
+@item -d @var{singledate}
+Select the single, latest revision dated @var{singledate} or earlier.
+
+To include several date ranges and/or singledates, repeat the @samp{-d}
+option as many times as necessary.
+
+@item -r@var{rev1}:@var{rev2}
+@itemx -r@var{branch}
+@itemx -r@var{branch}.
+@itemx -r
+Specify revisions (note that @var{rev1} or @var{rev2} can be omitted, or
+can refer to branches). Send both the @samp{-r} and the revision
+information in a single @code{Argument} request. To include several
+revision selections, repeat the @samp{-r} option.
+
+@item -s @var{state}
+@itemx -w
+@itemx -w@var{login}
+Select on states or users. To include more than one state or user,
+repeat the option. Send the @samp{-s} option as a separate argument
+from the state being selected. Send the @samp{-w} option as part of the
+same argument as the user being selected.
+@end table
+
@item co \n
Response expected: yes. Get files from the repository. This uses any
previous @code{Argument}, @code{Directory}, @code{Entry}, or
@@ -1111,8 +1171,8 @@ commands are module names, as described for @code{co}.
@item init @var{root-name} \n
Response expected: yes. If it doesn't already exist, create a @sc{cvs}
repository @var{root-name}. Note that @var{root-name} is a local
-directory and @emph{not} a fully qualified @code{CVSROOT} variable. The
-@code{Root} request need not have been previously sent.
+directory and @emph{not} a fully qualified @code{CVSROOT} variable.
+The @code{Root} request need not have been previously sent.
@item update \n
Response expected: yes. Actually do a @code{cvs update} command. This
@@ -1245,6 +1305,7 @@ Response expected: yes. This request is a null command in the sense
that it doesn't do anything, but merely (as with any other requests
expecting a response) sends back any responses pertaining to pending
errors, pending @code{Notified} responses, etc.
+The @code{Root} request need not have been previously sent.
@item update-patches \n
Response expected: yes.
@@ -1277,6 +1338,11 @@ Response expected: yes.
Request that the server transmit mappings from filenames to keyword
expansion modes in @code{Wrapper-rcsOption} responses.
+@item version \n
+Response expected: yes.
+Request that the server transmit its version message.
+The @code{Root} request need not have been previously sent.
+
@item @var{other-request} @var{text} \n
Response expected: yes.
Any unrecognized request expects a response, and does not
@@ -1934,8 +2000,8 @@ working directory, and the meaning of sending @code{Entries} without
A number of enhancements are possible. Also see the file @sc{todo} in
the @sc{cvs} source distribution, which has further ideas concerning
various aspects of @sc{cvs}, some of which impact the protocol.
-Similarly, the @code{http://www.cyclic.com} site, in particular the
-@cite{Development of CVS} page.
+Similarly, the @code{http://www.cvshome.org} site, in particular the
+@cite{Development} pages.
@itemize @bullet
@item