| VCI documentation | view source | Contained in the VCI distribution. |
VCI::VCS::Bzr - Object-oriented interface to Bazaar (bzr)
use VCI;
my $repository = VCI->connect(type => 'Bzr',
repo => 'bzr://bzr.example.com/');
This is a "driver" for VCI for the Bazaar version-control system. You can find out more about Bazaar at http://bazaar.canonical.com/.
For information on how to use VCI::VCS::Bzr, see VCI.
For the repo argument to connect in VCI, choose the directory
above where your branches are kept. For example, if I have a branch
http://bzr.domain.com/bzr/branch, then the repo would be
http://bzr.domain.com/bzr/.
Bzr's connect also takes one optional extra argument:
x_bzrThe path to the bzr binary on your system. If not specified, we will
search your PATH and throw an error if bzr isn't found.
Taint Mode: VCI will throw an error if this argument is tainted,
because VCI just runs this command blindly, and we wouldn't want
to run something like delete_everything_on_this_computer.sh.
VCI::VCS::Bzr requires that the following be installed on your system:
bzr Must be installed and accessible to VCI. If it's not in your path,
you should specify an x_bzr argument to connect in VCI, which should
contain the full path to the bzr executable, such as /usr/bin/bzr.
The bzrtools extension package must be installed. Usually this is
available as a package (RPM or deb) in your distrubution, or you can
download it from here: http://launchpad.net/bzrtools.
Because VCI::VCS::Bzr processes the output of bzr, it needs it in a
machine-readable format like XML. For bzr, this is accomplished by the
bzr-xmloutput plugin, which is available here:
http://launchpad.net/bzr-xmloutput.
You can read about how to install it at http://doc.bazaar.canonical.com/plugins/en/plugin-installation.html.
This is in addition to any perl module requirements listed when you install VCI::VCS::Bzr.
These are limitations of VCI::VCS::Bzr compared to the general API specified
in the VCI::Abstract modules.
projectsOn some repositories, "projects" will return an empty array, even though there are branches there. This only happens for repositories where we can't list the directories. For example, HTTP repositories without a directory listing.
However, get_project will still work on those repositories.
When constructing a Directory, you cannot specify time or revision
without also specifying contents. VCI::VCS::Bzr itself never does this,
so you generally don't have to worry about this unless you're building
your own objects for some reason.
With local repositories, VCI::VCS::Bzr should be very fast. With
remote repositories, certain operations may be slow, such as
calling projects on a Repository.
Max Kanat-Alexander <mkanat@cpan.org>
Copyright 2007-2010 by Everything Solved, Inc.
http://www.everythingsolved.com
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| VCI documentation | view source | Contained in the VCI distribution. |