Class: Capistrano::Deploy::SCM::Bzr

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

Implements the Capistrano SCM interface for the Bazaar-NG revision control system (bazaar-vcs.org/).

### Methods

checkout diff export head log next_revision 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)

The bzr "diff" command doesn‘t accept a repository argument, so it must be run from within a working tree.

export(revision, destination)

The bzr ‘export’ does an export similar to other SCM systems

head()

Bazaar-NG doesn‘t support any pseudo-id‘s, so we‘ll use the convention in this adapter that the :head symbol means the most recently committed revision.

log(from, to=nil)

Returns a log of changes between the two revisions (inclusive).

next_revision(revision)

Increments the given revision number and returns it.

query_revision(revision) {|command| ...}

Attempts to translate the given revision identifier to a "real" revision. If the identifier is :head, the "bzr revno" command will be yielded, and the block must execute the command and return the output. The revision will be extracted from the output and returned. If the ‘revision’ argument, on the other hand, is not :head, it is simply returned.

sync(revision, destination)

The bzr ‘update’ command does not support updating to a specific revision, so this just does update, followed by revert (unless updating to head).

[Validate]