Class: Capistrano::Deploy::SCM::Cvs

Class | Capistrano::Deploy::SCM::Cvs
In: | lib/capistrano/recipes/deploy/scm/cvs.rb
Parent: | Base

Implements the Capistrano SCM interface for the CVS revision control system.

### Methods

checkout diff export handle_data head log query_revision sync

### Public Instance methods

checkout(revision, destination)

Returns the command that will check out the given revision to the given destination.

diff(from, to=nil)

Returns the command that will do an "cvs diff" for the two revisions.

export(revision, destination)

Returns the command that will do an "cvs export" of the given revision to the given destination.

handle_data(state, stream, text)

Determines what the response should be for a particular bit of text from the SCM. Password prompts, connection requests, passphrases, etc. are handled here.

head()

CVS understands ‘HEAD’ to refer to the latest revision in the repository.

log(from, to=nil)

Returns an "cvs log" command for the two revisions.

query_revision(revision) {|scm(cvs_root, :log, "-r| ...}

Unfortunately, cvs doesn‘t support the concept of a revision number like subversion and other SCM‘s do. For now, we‘ll rely on getting the timestamp of the latest checkin under the revision that‘s passed to us.

sync(revision, destination)

Returns the command that will do an "cvs update" to the given revision, for the working copy at the given destination.

[Validate]