GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  VCS (3)

.ds Aq ’

NAME

VCS - Version Control System access in Perl

CONTENTS

SYNOPSIS



    use VCS;
    $file = VCS::File->new($ARGV[0]);
    print $file->url, ":\n";
    for $version ($file->versions) {
        print $version->version,
               was checked in by ,
              $version->author,
              "\n";
    }



DESCRIPTION

VCS is an API for abstracting access to all version control systems from Perl code. This is achieved in a similar fashion to the DBI suite of modules. There are container classes, VCS::Dir, VCS::File, and VCS::Version, and implementation classes, such as VCS::Cvs::Dir, VCS::Cvs::File, and VCS::Cvs::Version, which are subclasses of their respective container classes.

The container classes are instantiated with URLs. There is a URL scheme for entities under version control. The format is as follows:



    vcs://localhost/VCS::Cvs/fs/path/?query=1



The query part is ignored for now. The path must be an absolute path, meaningful to the given class. The class is an implementation class, such as VCS::Cvs.

The container classes work as follows: when the new method of a container class is called, it will parse the given URL, using the VCS->parse_url method. It will then call the new of the implementation’s appropriate container subclass, and return the result. For example,



    VCS::Version->new(vcs://localhost/VCS::Cvs/fs/path/file/1.2);



will return a VCS::Cvs::Version.

An implementation class is recognised as follows: its name starts with VCS::, and require "VCS/Classname.pm" will load the appropriate implementation classes corresponding to the container classes.

VCS METHODS

    VCS->parse_url

This returns a four-element list:



    ($hostname, $classname, $path, $query)



For example,



    VCS->parse_url(vcs://localhost/VCS::Cvs/fs/path/file/1.2);



will return



    (
        localhost,
        VCS::Cvs,
        /fs/path/file/1.2,
        
    )



This is mostly intended for use by the container classes, and its interface is subject to change.

    VCS->class_load

This loads its given implementation class.

This is mostly intended for use by the container classes, and its interface is subject to change.

VCS::* METHODS

Please refer to the documentation for VCS::Dir, VCS::File, and VCS::Version; as well as the implementation specific documentation as in VCS::Cvs, VCS::Rcs.

AUTHORS



  Greg McCarroll <greg@mccarroll.org.uk>
  Leon Brocard
  Ed J



KUDOS

Thanks to the following for patches,



    Richard Clamp
    Pierre Denis
    Slaven Rezic



COPYRIGHT

Copyright (c) 1998-2003 Leon Brocard & Greg McCarroll. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

VCS::Cvs, VCS::Dir, VCS::File, VCS::Rcs, VCS::Version.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 VCS (3) 2014-07-09

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.