NAME
    ProjectBuilder::VCS, part of project-builder.org

DESCRIPTION
    This modules provides version control system functions.

USAGE
    pb_vcs_init
        This function setup the environment for the VCS system related to the
        URL given by the pbprojurl configuration parameter. The potential
        parameter indicates whether we should inititate the context or not. It
        sets up environement variables (pbDIR, PBDIR, 2692ISION, PBCMSLOGFILE)

    pb_vcs_export
        This function exports a VCS content to a directory. The first
        parameter is the URL of the VCS content. The second parameter is the
        directory in which it is locally exposed (result of a checkout). If
        undef, then use the original VCS content. The third parameter is the
        directory where we want to deliver it (result of export). It returns
        the original tar file if we need to preserve it and undef if we use
        the produced one.

    pb_vcs_get_uri
        This function is only called with a real VCS system and gives the URL
        stored in the checked out directory. The first parameter is the schema
        of the VCS systems (svn, cvs, svn+ssh, ...) The second parameter is
        the directory in which it is locally exposed (result of a checkout).

    pb_vcs_copy
        This function copies a VCS content to another. The first parameter is
        the schema of the VCS systems (svn, cvs, svn+ssh, ...) The second
        parameter is the URL of the original VCS content. The third parameter
        is the URL of the destination VCS content.

        Only coded for SVN now as used for pbconf itself not the project

    pb_vcs_checkout
        This function checks a VCS content out to a directory. The first
        parameter is the schema of the VCS systems (svn, cvs, svn+ssh, ...)
        The second parameter is the URL of the VCS content. The third
        parameter is the directory where we want to deliver it (result of
        export).

    pb_vcs_up
        This function updates a local directory with the VCS content. The
        first parameter is the schema of the VCS systems (svn, cvs, svn+ssh,
        ...) The second parameter is the list of directory to update.

    pb_vcs_checkin
        This function updates a VCS content from a local directory. The first
        parameter is the schema of the VCS systems (svn, cvs, svn+ssh, ...)
        The second parameter is the directory to update from. The third
        parameter is the comment to pass during the commit

    pb_vcs_add_if_not_in
        This function adds to a VCS content from a local directory if the
        content wasn't already managed under the VCS. The first parameter is
        the schema of the VCS systems (svn, cvs, svn+ssh, ...) The second
        parameter is a list of directory/file to add.

    pb_vcs_add
        This function adds to a VCS content from a local directory. The first
        parameter is the schema of the VCS systems (svn, cvs, svn+ssh, ...)
        The second parameter is a list of directory/file to add.

    pb_vcs_isdiff
        This function returns a integer indicating the number of differences
        between the VCS content and the local directory where it's checked
        out. The first parameter is the schema of the VCS systems (svn, cvs,
        svn+ssh, ...) The second parameter is the directory to consider.

    pb_vcs_mkdir
        This function makes a VCS directory The first parameter is the schema
        of the VCS systems (svn, cvs, svn+ssh, ...) The second parameter is
        the directory to create. The third parameter is the comment to pass
        during the commit

    pb_vcs_compliant
        This function checks the compliance of the project and the pbconf
        directory. The first parameter is the key name of the value that needs
        to be read in the configuration file. The second parameter is the
        environment variable this key will populate. The third parameter is
        the location of the pbconf dir. The fourth parameter is the URI of the
        VCS content related to the pbconf dir. The fifth parameter indicates
        whether we should inititate the context or not.

        Only called for PBCONFDIR and PBDIR

    pb_vcs_conf_update_v0
        This function transform the old configuration v0 file as first param
        into a new v1 one as second param by calling a COnf.pm function and
        then adds the resulting file into VCS

WEB SITES
    The main Web site of the project is available at
    <http://www.project-builder.org/>. Bug reports should be filled using the
    trac instance of the project at <http://trac.project-builder.org/>.

USER MAILING LIST
    None exists for the moment.

AUTHORS
    The Project-Builder.org team <http://trac.project-builder.org/> lead by
    Bruno Cornec <mailto:bruno@project-builder.org>.

COPYRIGHT
    Project-Builder.org is distributed under the GPL v2.0 license described in
    the file "COPYING" included with the distribution.

