The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::KGB::Client::CVS - KGB interface to CVS

SYNOPSIS

    use App::KGB::Client::CVS;
    my $client = App::KGB::Client::CVS(
        # common App::KGB::Client parameters
        repo_id => 'my-repo',
        ...
        # CVS-specific
        cvs_root  => $ENV{CVSROOT},
        author    => $ENV{USER},
        directory => 'module/dir',
    );
    $client->run;

DESCRIPTION

App::KGB::Client::CVS provides CVS-specific retrieval of commits and changes for KGB::Client.

CONSTRUCTOR

new ( { initializers } )

Standard constructor. Accepts inline hash with initial field values.

FIELDS

App:KGB::Client::CVS defines the following additional fields:

cvs_root (mandatory)

Physical path to the CVS root directory.

author

The user name of the commit author.

directory

Relative (to CVS root) path to the directory this change is in.

As a convention, the first path member is taken as a module.

METHODS

describe_commit

The first time this method is called, it parses STDIN and determines commit contents, returning an instance of App::KGB::Commit class describing the commit.

All subsequential invocations return undef.