Bazaar

Bazaar

 




Wiki Tools

  • Login
  • Create Profile
  • Find Page
  • Recent Changes
  • Page History
  • Attachments

Redirected from page "PluginRegistry"

What is a Bazaar plugin?

A plugin is an external component for Bazaar that extends Bazaar's functionality, by adding or replacing code. Plugins are often a way for developers to test new features prior to inclusion in the core codebase. Plugins can do a variety of things, including overriding commands, adding new commands, providing additional network transports, customizing log output, etc. Bazaar's developers give the plugin architecture a lot of attention, ensuring that it's one of the most comprehensive revision control plugin systems available.

The command bzr plugins will show all the plugins currently installed and the locations they are loaded from.

How to Install a plugin

Installing a plugin is very easy! One can either install a plugin systemwide or on a user-by-user basis. Both methods involve creating a "plugins" directory, within which one places plugins in subdirectories. For example, "plugins/bzrtools/".

Two locations are currently checked: the bzrlib/plugins directory (typically found in something like /usr/lib/python2.4/site-packages/bzrlib/plugins/) and $HOME/.bazaar/plugins/ (or on Windows, $APPDATA/bazaar/2.0/plugins).

If you want to install a plugin into your .bazaar/plugins/ directory, just move the extension directory in there and then run python setup.py build_ext -i.

One can additionally override the home plugins by setting the environment variable BZR_PLUGIN_PATH to a directory that contains plugins. The installation of a plugin can be checked by running  bzr plugins  at any time. New commands can be seen by running  bzr help commands .

Since Bazaar 0.15, the plugin folders may not contain dashes like bzr-gtk. Instead, rename such plugin directories to something without a dash, e.g., gtk.

Additional dashes may be converted to underscores, for example:

bzr branch lp:bzr-push-and-update ~/.bazaar/plugins/push_and_update

Tip for developers

If you are tracking the "tip" of Bazaar, using the cutting edge development version and keeping it up to date, then you can easily do the same with most of the plugins. For example, to install the bzrtools plugin for your main user account, run:

bzr branch lp:bzrtools ~/.bazaar/plugins/bzrtools

After doing this, you can update the bzrtools plugin to its tip at any time with:

cd ~/.bazaar/plugins/bzrtools; bzr pull; cd -

Writing a plugin

See the WritingPlugins page for how to write a plugin.

Lists of available plugins

This section lists plugins for Bazaar that are available under a free software licence. Please do not add non-free plug-ins to this page unless they are read-only, in the sense that they are designed primarily to provide a migration pathway from a non-free revision control system to Bazaar.

How to read these listings: Most URLs point to bzr branches, which may look like empty directories if you open them in a web browser. Instead, use bzr branch <url> to download them. You can then keep them up to date simply by changing into the directory with the plugin code and typing bzr pull, which will update that plugin to the latest revision of that branch.

At right side of tables you can see info about plugin compatibility with different operating systems. See legend.

Extensions to existing Bazaar commands

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

atomlog

None

SimonRozet

?

Bzr log in atom format.

URL to branch

bzr-xmloutput

None

GuillermoGonzalez

add --xml to log, status, annotate, missing, info, version and plugins

https://launchpad.net/bzr-xmloutput
URL to branch

commit selector

None

AlexanderBelchenko

?

Simple helper to select files to commit. qcommit (from QBzr) and gcommit (from BzrGtk) are better alternatives.

https://launchpad.net/bzr-commit-selector

countlog

None

Pileofrogs

?

?

Easy activity summary showing how many times each file is changed and when most recent change took place

Countlog

docdiff

None

HAYASHI Kentaro

x

x

diff plugin for office document such as Word/Excel and so on.

URL to branch

encdiff

None

HAYASHI Kentaro

?

?

Yet another diff plugin. this plugin detect file encoding and convert it(UTF-8/EUC-JP/SJIS and so on) automatically to default one(may be cp932 or something else).

URL to branch

extdiff

None

HAYASHI Kentaro

?

?

diff plugin for external diff tools.

URL to branch

gnulog

None

GustavoCarneiro

GNU changelog formatter for bzr log

Download

gzipped_bundle

None

AlexanderBelchenko

?

Allow create and merge gzipped bundles

https://launchpad.net/bzr-gzipped-bundle

htmllog

None

MichaelEllerman

?

Bzr log in html format.

URL to branch

nicehtml

None

FriedrichWeber

?

?

generates an extended branch html information page using Jinja and pygments

URL to branch

interactive

None

AliSabil

?

Adds user interaction to the core commands (only commit and record-patch for now)

URL to branch

lastlog

None

WouterBolsterlee

?

?

Shows most recent commit messages

http://uwstopia.nl/geek/projects/bzr/bzr-lastlog

lessdiff

None

MichaelEllerman

X?

?

Bzr diff in colour and paged with less (or $PAGER)

URL to branch

lesslog

None

MichaelEllerman

X

?

Bzr log paged with less (or $PAGER)

URL to branch

lightweight branching

None

AlexanderBelchenko

?

?

Lightweight branching of lightweight checkouts

https://launchpad.net/bzr-lightweight-branch

merge-into

None

JohnArbashMeinel

?

?

Make it easier to merge another project into this one

https://launchpad.net/bzr-merge-into/

pager

None

Lukáš Lalinský

X

?

Run commands producing long output in a pager ($PAGER or less). This is similar to the lastlog plugin, but more generic and supports more commands (log, diff, cat, help, status).

http://bzr.oxygene.sk/bzr-plugins/pager

push-and-update

None

JohnArbashMeinel

?

?

Provide the "push-and-update" command to automate the running of 'ssh remote bzr update path' after pushing to sftp://remote/path. This allows us to keep a remote working tree up to date.

https://launchpad.net/bzr-push-and-update/

GUI (Graphical User Interfaces for Bazaar)

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

bzr-gtk

None

Bazaar-GTK team

Branch Visualization

URL to branch

difftools

None

StephenWard

Graphical diff tools

Download or URL to branch

QBzr

None

LukasLalinsky

bzr.exe

Qt frontend for some of Bazaar commands

URL to branch

Interoperability with other Version Control Systems

(See also BzrMigration)

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

baz-import

BzrTools

AaronBentley

?

?

Convert Baz 1.x to Bazaar-NG

See BzrTools

bzrcvsserve

BzrCVSServe

JohanDahlin

?

?

Export Bazaar branches to CVS clients

https://launchpad.net/bzrcvsserve

cvsps-import

JohnArbashMeinel

?

?

Import CVS branches into Bazaar, using cvsps to extract patchsets. Supports importing multiple branches

https://launchpad.net/bzr-cvsps-import

fastimport

IanClatworthy

Fast loading of history into Bazaar from most popular tools. Supports multiple branches and mirroring.

https://launchpad.net/bzr-fastimport

git

None

RobertCollins, JelmerVernooij

X

?

Read-only support for Git branches

URL to branch

hg

None

RobertCollins

?

?

Read-only support for Mercurial branches

URL to branch

svn

None

JelmerVernooij

Support for Subversion branches

http://people.samba.org/bzr/jelmer/bzr-svn/trunk/

Web interface

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

loggerhead

None

MichaelHudson and MartinAlbisetti

yes

yes

yes

Recommended web interface for Bazaar (see also WebInterfaces for information about non-plugin web interfaces to Bazaar)

Home page

webserve

None

GoffredoBaroncelli

?

?

A web interface to Bazaar (see also WebInterfaces for information about non-plugin web interfaces to Bazaar)

Browse Download (dev version at URL to branch)

Miscellaneous

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

automv

None

Lukáš Lalinský

?

?

Automatically detect renames/moves in the working tree.

URL to branch

automirror

None

NeilMartinsenBurrell

Automatically update a remote working copy upon commit.

URL to branch

benchdisplay

None

Carl Friedrich Bolz

?

?

Format bzr benchmark times as a nice HTML page

URL to branch

bisect

None

?

?

Find the revision introducing a bug with a binary search

https://launchpad.net/bzr-bisect

branchfeed

None

RobertCollins

Create ATOM feeds in .bzr/branch/branch.atom during commit/push/pull (see also FeedGenerators for information about non-plugin feed generators)

https://launchpad.net/bzr-branchfeed/

bookmarks

None

Lukáš Lalinský

?

Bookmarking system for often used branch locations/URLs.

https://launchpad.net/bzr-bookmarks/

builddeb

None

JamesWestby

?

?

Build Debian packages from Bazaar branches

URL to branch

bzr-bash-completion

None

Duc_Bao_Ta

X

X

BASH completion for BZR

URL to branch

bzr-tcsh-completion

None

RobertWidhopf

X

?

TCSH completion for BZR

URL to branch

bzr-pqm

None

JohnArbashMeinel

?

?

Submit commands to a PQM service

URL to branch

bzr-proe

None

PascalBach

Helper tools to use Bazaar together with PTC's Pro/ENGINEER

https://launchpad.net/bzr-proe

bzr-search

None

RobertCollins

Generate full text indices of branch history. Can be queried from the command line or loggerhead.

Browse [lp:bzr-search Branch]

bzr-text-checker

None

MariusKruger

?

?

Help avoid committing trailing white space and other undesired text.

Project Branch

checkeol

None

AlexanderBelchenko

?

?

Pre-commit hook to check files for correct line-endings

URL to branch

cia

None

JelmerVernooij

?

?

Submit commits to CIA

URL to branch

colocated

None

JelmerVernooij

?

?

Colocated branches support (aka git-style branches)

URL to branch

dbus

None

RobertCollins

?

?

Integrate bazaar with dbus

Browse Branch

depend

None

AlexanderBelchenko

?

?

Show versions of installed libraries used by bzr

https://launchpad.net/bzr-depend

diffstat

None

Russ Brown

?

Diff statistics

URL to Project Dev branch Stable branch

dns_cache

None

JohnArbashMeinel

?

?

Cache DNS requests, greatly speeding up urllib.urlopen requests

URL to branch

email

None

RobertCollins

?

?

Send email after commit, e.g. to bazaar-commits mailing list

URL to branch

extcommand

None

Lukáš Lalinský

?

?

Support for calling bzr-CMD scripts or aliases involving external programs from within bzr.

URL to branch Source view

extmerge

None

ErikBågfors

?

?

Calls external merge tools to help resolve conflicts

https://launchpad.net/bzr-extmerge

file-revno

None

RobertWidhopf

Efficiently returns the revision number(s) modifying a file.

http://www.robf.de/Hacking/bazaar/bzr_file_revno

foreach

ezbzr

TimPowell

?

Iterates a command for each revno

https://launchpad.net/ezbzr/

graph-ancestry

BzrTools

AaronBentley

?

Draw diagrams of branch history

See BzrTools

grep

None

VincentLadeuil

?

Grep through files known to bzr (experimental)

http://bazaar.launchpad.net/~v-ladeuil/bzr/grep

hgrep

None

MichaelEllerman

?

?

Grep through history (experimental)

http://michael.ellerman.id.au/bzr/plugins/hgrep

network_manager

None

JelmerVernooij

X

X

Automatically use --local when network manager says connection is down.

http://people.samba.org/bzr/jelmer/bzr-nm/trunk

notification

None

JasonSmith

?

?

Send freedesktop.org notification dialogs when push or pull completes

Home page URL to branch

pack_indices

None

JohnArbashMeinel

Re-pack knit indices to give smaller downloads.

https://launchpad.net/bzr-pack-indices

publish-bot

None

ChristopherArmstrong

Publish commits to IRC

http://launchpad.net/publish-bot

quickbranch

None

KeirMierle

?

?

Make .bzrcache.gz of the .bzr directory at every commit (fast branching)

http://www.cs.utoronto.ca/~keir/quickbranch/

recursive-upgrade

None

JelmerVernooij

Adds --recurse option to upgrade command

URL to branch

remove-revisions

None

JelmerVernooij

?

Completely remove revisions from a repository

URL to branch

rebase

None

JelmerVernooij

?

?

Rebase (like git-rebase)

URL to branch

repo-push

None

JamesHenstridge

?

Push a repository to a remote location, along with all its branches

https://launchpad.net/bzr-repo-push

repoalias

None

Marien Zwart

"repo:" shortcut for the repository root

https://launchpad.net/~marienz/+junk/repoalias

revnocache

None

IanClatworthy

Cache branch history for faster log and revno lookup

https://launchpad.net/bzr-revnocache

rspush

BzrTools

AaronBentley

-?

?

Push a branch via rsync

See BzrTools

shelf

BzrTools

MichaelEllerman

?

Temporarily set aside changes

See BzrTools (dev version at http://michael.ellerman.id.au/bzr/plugins/shelf)

rxrename

None

EduardoPadoan

?

?

Renames multiple files using a regexp

https://code.edge.launchpad.net/~eopadoan/bzr-rxrename/main

scmproj

None

AlexanderBelchenko, MariusKruger

?

Organizing set of VCS branches as united project (experimental unofficial emulation of nested trees)

https://launchpad.net/bzr-scmproj

service

None

JohnArbashMeinel

?

?

Keep bzrlib loaded in memory

http://bzr.arbash-meinel.com/plugins/

setuptoolsbzr

None

BarryWarsaw

?

Allows Python's setuptools package to grok Bazaar the same way it currently groks CVS and SVN. This is really a plugin for setuptools

https://launchpad.net/setuptoolsbzr
http://cheeseshop.python.org/pypi/setuptoolsbzr

shell-hooks

None

JelmerVernooij

?

?

Support for running external commands in hooks.

URL to branch

stats

None

JohnArbashMeinel

Show stats like authors or commits over time

URL to branch

testrunner

None

PaulHinze

?

?

"Poor man's PQM": specify a command that must succeed before a change is allowed in a branch

https://launchpad.net/bzr-testrunner

touch

None

BarryWarsaw

?

Like *nix touch(1) but for bzr

https://launchpad.net/bzr-touch

undelete

None

ParthMalwankar

?

?

Step through history and undelete to last known version of file(s)/dir(s). Allows searching history using regex for filename.

https://launchpad.net/bzr-undelete

update-mirrors

None

JohnArbashMeinel

?

?

Updates all the branches in a directory

URL to branch

upload

None

VincentLadeuil, MartinAlbisetti

Upload *just* the working tree, and keep track of what has been sent for incremental uploads. Mostly oriented towards web development.

https://launchpad.net/bzr-upload

win32symlinks

None

AlexanderBelchenko

X

X

Provide support for bzr internals for fake symlinks in cygwin format on win32 native.

https://launchpad.net/bzr-win32symlinks

x-bit

None

AlexanderBelchenko

?

?

Control x-bit inside of bzr inventory. Primarily intended to use on win32

https://launchpad.net/bzr-x-bit

usertest

None

IanClatworthy

?

Benchmark Bazaar on user provided source trees.

https://launchpad.net/bzr-usertest

vimdiff

None

MartinPool

?

?

Display differences between revisions of a file, using vimdiff

URL to branch

webdav

None

VincentLadeuil

?

?

Support writing to WebDAV branches

https://launchpad.net/bzr.webdav

Out of Date

These plugins are incompatible with recent releases of Bazaar, or the URL gives 404 error.

Platform

Name

Part of

Owner

GNU/Linux

Windows

Mac

Description

Home

fileid

None

ThomasGerigk

?

?

Modifies file-ids according to a list

http://www.towerlin.de/BRANCHES/fileid/

graft

None

JamieWilkinson

?

?

Graft branches onto the end of others

http://repo.spacepants.org/bzr/plugins/graft/

release

ezbzr

NathanielMcCallum

?

?

Merges a local branch into a remote one

http://www.natemccallum.com/software/ezbzr/

reweave

None

MartinPool

?

?

Update history, inserting ghosts

Download

submit-by-mail

None

HermannKraus

?

?

Submit changes by email and verify senders identity through gpg before applying it.

URL to branch

tags

None

MichaelEllerman

?

?

Explicitly versioned tags.

http://michael.ellerman.id.au/bzr/plugins/tags

Obsolete

There are a number of obsolete plugins.