1
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
4
.\" ========================================================================
5
.de Sh \" Subsection heading
13
.de Sp \" Vertical space (when we can't use .PP)
17
.de Vb \" Begin verbatim text
22
.de Ve \" End verbatim text
26
.\" Set up some character translations and predefined strings. \*(-- will
27
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28
.\" double quote, and \*(R" will give a right double quote. | will give a
29
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
30
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
31
.\" expand to `' in nroff, nothing in troff, for use with C<>.
33
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
37
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
51
.\" If the F register is turned on, we'll generate index entries on stderr for
52
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53
.\" entries marked with X<> in POD. Of course, you'll have to process the
54
.\" output yourself in some meaningful fashion.
57
. tm Index:\\$1\t\\n%\t"\\$2"
63
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
64
.\" way too many mistakes in technical documents.
68
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69
.\" Fear. Run. Save yourself. No user-serviceable parts.
70
. \" fudge factors for nroff and troff
79
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
85
. \" simple accents for nroff and troff
95
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
102
. \" troff and (daisy-wheel) nroff accents
103
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110
.ds ae a\h'-(\w'a'u*4/10)'e
111
.ds Ae A\h'-(\w'A'u*4/10)'E
112
. \" corrections for vroff
113
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115
. \" for low resolution devices (crt and lpr)
116
.if \n(.H>23 .if \n(.V>19 \
129
.\" ========================================================================
132
.TH Cvs 3pm "2005-08-12" "perl v5.8.7" "User Contributed Perl Documentation"
134
Cvs \- Object oriented interface to the CVS command
136
.IX Header "SYNOPSIS"
144
\& '/path/to/repository/for/module',
145
\& cvsroot => ':pserver:user@host:/path/to/cvs',
146
\& password => 'secret'
147
\& ) or die $Cvs::ERROR;
151
\& $cvs\->checkout('module');
159
\& my $status = $cvs\->status('file');
160
\& if($status\->is_modified)
162
\& $cvs\->commit('file');
167
\& $cvs\->release({delete_after => 1});
171
.IX Header "DESCRIPTION"
173
.SH "LEGACY CVS METHODS"
174
.IX Header "LEGACY CVS METHODS"
178
\& Cvs = new Cvs ["workdir"] [key => "value" [, ...]];
182
\& my $obj = new Cvs "workdir";
186
\& my $obj = new Cvs "workdir", cvsroot => "/path/to/cvsroot";
190
\& my $obj = new Cvs cvsroot => ":pserver:user\e@host:/path/to/cvs";
193
Create a new Cvs object for the repository given in argument. Note
194
that the working directory doesn't need to already exist.
196
Allowed parameters are:
199
Path to the working directory. You don't need it if you plan to use
200
only remote commands like rdiff or rtag.
203
Address of the cvsroot. See the Cvs::Cvsroot module documentation for
204
more information on supported \s-1CVSROOT\s0. Note that if you don't supply a
205
cvs root but a working directory, Cvs will try to guess the \s-1CVSROOT\s0
206
value. You still need to supply password and others authentication
207
values. If Cvs can't determine the \s-1CVSROOT\s0 value, an error will be
208
thrown and the object will not be created.
209
.IP "password, passphrase, ..." 4
210
.IX Item "password, passphrase, ..."
211
All options supported by Cvs::Cvsroot are supported here. Please see
212
Cvs::Cvsroot documentation for more details.
214
.IX Subsection "checkout"
216
\& Cvs::Result::Checkout = $obj\->checkout("module", {key => "value"});
219
Checkout the module \*(L"module\*(R" in the repository (the one that served to
220
create the Cvs object) from the cvsroot given in parameter.
222
Allowed parameters are:
225
Boolean value used to reset any sticky tags, dates or options (See the
226
\&\-A cvs checkout option).
229
Specify the revision to checkout the module (See the \-r cvs checkout
233
Specify the date from when to checkout the module (See the \-D cvs
236
Cvs::Result::Checkout.
238
.IX Subsection "update"
240
\& Cvs::Result::Update = $cvs\->update();
245
.IX Subsection "status"
247
\& Cvs::Result::StatusItem = $cvs\->status("file");
251
\& Cvs::Result::StatusList =
252
\& $cvs\->status("file1", "file2", {multiple => 1});
255
Get the status of one of more files.
257
Allowed parameters are:
260
Boolean value that specify the type of object returned. If true, a
261
Cvs::Result::StatusList object is returned, and status on more than
262
one files can be handled. If false, a Cvs::Result::StatusItem object
263
is return and only one file status can be handled (the first one if
267
If a directory is supplied, process it recursively (Default true).
269
Cvs::Result::StatusItem, Cvs::Result::StatusList
271
.IX Subsection "diff"
273
\& Cvs::Result::DiffItem = $cvs\->diff();
277
\& Cvs::Result::DiffList = $cvs\->diff({multiple => 1});
280
Cvs::Result::DiffItem, Cvs::Result::DiffList.
282
.IX Subsection "rdiff"
284
\& Cvs::Result::RdiffList =
285
\& $cvs\->rdiff("module", {from_revision => $rev});
288
Cvs::Result::RdiffList.
292
\& Cvs::Result::Log = $cvs\->log();
299
\& Cvs::Result::Tag = $cvs\->tag("tag");
304
.IX Subsection "rtag"
306
\& Cvs::Result::Tag = $cvs\->rtag("module", "tag");
311
.IX Subsection "release"
313
\& Cvs::Result::Release = $cvs\->release();
317
\& Cvs::Result::Release = $cvs\->release('module', ..., {force => 1});
320
Call the release command.
322
If call with no directories to release, self repository will be
326
Boolean value that activate a forced directory release even if some
327
files was not committed. Defaults to false.
329
.IX Item "delete_after"
330
Boolean value that activate directory removal after a release. Default
335
.IX Subsection "export"
337
\& Cvs::Result::Export = $obj\->export("module", {key => "value"});
340
Checkout the module \*(L"module\*(R" in the repository (the one that served to
341
create the Cvs object) from the cvsroot given in parameter, but without
342
the \s-1CVS\s0 administrative directories.
344
Allowed parameters are the same as for checkout. However, one of the
345
options 'revision' or 'date' must be specified.
347
.IX Header "OTHERS METHODS"
349
.IX Subsection "module_list"
351
\& my @modules = $cvs\->module_list();
354
Returns the list of all modules which can be riched on the
355
\&\s-1CVSROOT\s0. This method do something that cvs doesn't implement by itself,
356
we use a little trick to get this list, and this perhaps not work with
359
Do not mix up this method with the \*(L"\-c\*(R" argument of the cvs' checkout
362
.IX Header "ACCESSORS"
364
.IX Subsection "cvsroot"
365
Returns the Cvs::Cvsroot object.
366
.Sh "working_directory"
367
.IX Subsection "working_directory"
368
Returns the full path of the working directory
371
This library is free software; you can redistribute it and/or modify
372
it under the terms of the \s-1GNU\s0 Lesser General Public License as
373
published by the Free Software Foundation; either version 2.1 of the
374
License, or (at your option) any later version.
376
This library is distributed in the hope that it will be useful, but
377
\&\s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of
378
\&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \s-1GNU\s0
379
Lesser General Public License for more details.
381
You should have received a copy of the \s-1GNU\s0 Lesser General Public
382
License along with this library; if not, write to the Free Software
383
Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307
386
.IX Header "COPYRIGHT"
387
Copyright (C) 2003 \- Olivier Poitrey