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 App::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.