Author image William J. Middleton

NAME

VCS::PVCS::Archive - Archive class for for VCS::PVCS.

SYNOPSIS

  use VCS::PVCS::Project;

  $project = new VCS::PVCS::Project("ProjectName");

# return ref to array of all folders in the project with SCRIPTS in the name

  $folds = $project->openFolders("SCRIPTS"); 
  foreach $folder (@$folds){
        @archives = $folder->Members(); # array of blessed Archive objects
        foreach $archive(@archives){
            $archive->checkout;  # Checkout single archive to folder's WD
        }
  }

DESCRIPTION

This class provides methods for use by Archive objects in the PVCS model.

Ordinarily, this class won't be included in your programs, as it is part of the ISA for the master class VCS::PVCS::Project, which should ordinarily be used, as shown above.

METHODS

new
  VCS::PVCS::Archive::new(archivedir,
        workdir,workfile,"checkin comment","workfile comment");

Open an existing archive or create a new one.

workfile
  $workfile = $Archive->Workfile;

Return the default workfile for this archive object. Use opts to change default actions.

get
  $Archive->get([get opts]);

Checkout the archive to the CWD. Use opts to change default actions.

checkout
  Convenience routine calls get()
co
  Convenience routine calls get()
put
  $Archive->put([put opts]);

Checkin the workfile in CWD to archive. Use opts to change default actions.

checkin
  Convenience routine calls put()
ci
  Convenience routine calls put()
vdiff
  $Archive->vdiff([vdiff opts]);

Takes a diff on the archive and workfile. Use opts to change default actions.

vlog
  $Archive->vlog([vlog opts]);

Takes a full vlog on the archive. Use opts to change default actions.

log
  Convenience routine calls vlog()
history
  Convenience routine calls vlog()
lock
  $Archive->lock($label|$version,[vcs opts]);

Locks the named revision (or rev spec'd by label). Use opts to change default action.

unlock
  $Archive->unlock($label|$version,[vcs opts]);

unlocks the named revision (or rev spec'd by label). Use opts to change default action.

addVersionLabel
  $Archive->addVersionLabel($label,[vcs opts]);

Create a new sticky version label for the archive (optionally with :<rev>.

deleteVersionLabel
  $Archive->deleteVersionLabel($label,[vcs opts]);

Delete a version label from the archive.

replaceVersionLabel
  $Archive->replaceVersionLabel($newlabel,$oldlabel,[vcs opts]);

Rename a version label in the archive

addFloatingVersionLabel
  $Archive->addFloatingVersionLabel($label,[vcs opts]);

Create a floating version label for the archive.

transformVersionLabel
  $Archive->transformVersionLabel($label,[vcs opts])';

Transform a specified version label to a floating version label.

deletePromoGroup
  $Archive->deletePromoGroup($group,[vcs opts]);

Delete the promotion group from the archive.

addPromoGroup
  $Archive->deletePromoGroup($group:$rev,[vcs opts])';

Add the archive, or promote it to, the named promotion group.

Create a new archive

vcs
  $archive->vcs([opts][files]);

Runs the VCS command against the archive, with opts as specified.

getAttributes
  $archive->getAttributes(@_);

Populates and returns the archive object associated with the archive. This object is blessed into the VCS::PVCS::Attributes class.

attributes
 $archive->attributes;

Returns the attributes object associated with the archive

COPYRIGHT

The PVCS module is Copyright (c) 1998 Bill Middleton. All rights reserved.

You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.

AUTHOR

Bill Middleton, wjm@metronet.com

SUPPORT / WARRANTY

The VCS::PVCS modules are free software.

THEY COME WITHOUT WARRANTY OF ANY KIND.

Commercial support agreements for Perl can be arranged via The Perl Clinic. See http://www.perl.co.uk/tpc for more details.

SEE ALSO

VCS::PVCS::Project