Now with support from Canonical
To ensure the success of introducing a new system that has a critial impact on your project we recommend taking a support subscription from Canonical. Canonical is the sponsor the Ubuntu and Bazaar projects and support is provided by dedicated Bazaar and VCS experts. If you want maximise what distributed version control can do for your business and project please submit an enquiry
Code Hosting from Launchpad.net
Bazaar is part of the Launchpad project. Launchpad provides code hosting, bug tracking, blueprint submission and translation services for a host of open source and commercial projects. So for a full service we recommend that you host your code on Launchpad.net.
MySQL, Mailman, Launchpad, and the Linux Foundation are among the many projects and organizations using Bazaar.
Bazaar runs on Windows, GNU/Linux, UNIX and Mac OS, and requires only Python 2.4. If you can run Python, you can run Bazaar! It is an official GNU project, licensed under the GPLv2 or later, at your option.Bazaar is:
Reliable
* Developed under an extensive test suite
* Check & verify branches at any time
* Optionally gnupg sign revisions with testaments.
Easy to use
* Users are productive with only five commands.
* Approximately one dozen core commands.
* Extensive help for all commands -- even the esoteric ones.
Portable
* Works and is formally tested on both Linux / UNIX and Windows
* Written in Python to work on a huge variety of platforms
* Packages exist for all major OS's for very easy installation
Intuitive
* Manage branches with OS commands too -- including rm, cp and mv.
* Branch anything by committing in any downloaded branch.
* Aliases for CVS and SVN users allow for easy migration.
Uniquely Powerful
* Uncommit capability
* Supports Unicode filenames.
* Branches are removable.
For More Information
The project website can be found at www.bazaar-vcs.org
Bazaar runs on GNU/Linux, UNIX, Windows and OS X out of the box. Bazaar is:
Friendly. Distributed version control doesn't need to be complex. Bazaar is Version Control for Human Beings. Bazaar has a natural feel because we focus on usability, particularly task efficiency.
Smart. Bazaar has perfect support for renaming files and directories. This means developers can refactor without holding back because of fear of merging. It also means you can unleash your community and merge efficiently even from contributors who are radically restructuring the tree.
Fast. Almost every open source project can get the advanced features of Bazaar without slowing down its developers. See our impressive benchmark results across a wide range of open source projects.
Lightweight. No dedicated server with Bazaar installed is needed, just FTP access to a web server. A smart server is available for those requiring additional performance or security but it is not required in many cases - Bazaar 1.x over plain http performs well.
Just a tool. Bazaar can play a key role in helping you get from great idea to running code in the hands of end users. Our documentation explicitly sets out to make you productive, explaining how to use Bazaar effectively, presenting best practices and insightful tips.
Extensible. Bazaar is designed as a Python API with a plugin system, so it is easy to embed in your tools and projects and easy to extend or integrate with existing infrastructure. Integration via XML is supported by a plugin. Whether you are a single user keeping track of configuration files or a team of 100s of people on multiple continents, Bazaar is a great choice.
Embeddable. A key design feature of Bazaar is support from the ground up for pluggable storage formats. One size does not fit all, particularly when new application delivery platforms - like the OLPC, iPod and Amazon's S3 - have different characteristics to traditional filesystems. If you want intelligent version control embedded into your application or content management system, Bazaar has the architecture you need.
Safe. Bazaar is backed by a thriving open source community and sponsored by Canonical, one of the fastest growing open source companies around. The development process follows best practices with code review of all core and community changes. Bazaar has a huge test suite (over 10,000 tests) that ensures that new features can be rapidly added without breaking existing ones. We are rapidly building the world's best VCS, delivering several dozen improvements to our adopters each and every month.
Free. Bazaar is available under the GPL v2 or later. If you want to embed Bazaar into your products under a different license, please contact us.
Download and Install Bazaar
If you can run Python 2.4 or later then you can run Bazaar. The current stable version is 1.17, released on the 20th of July, 2009. More recent development builds may be available for some platforms; see below.
The log of all changes made in each release is available in the release notes
Source of the stable release for any platform | ||
GNU/Linux: |
|
|
Ubuntu | ||
Debian | apt repository | |
Fedora | yum repository | |
CentOS/RHEL | yum repository | |
Mandriva | urpmi repository | |
Slackware | ||
Gentoo | dev-util/bzr |
|
openSUSE |
| |
UNIX: |
|
|
FreeBSD | in ports: devel/bazaar-ng |
|
AIX | from the bazaar for unix page: bzrunix |
|
Solaris |
| |
HP-UX |
| |
Windows: |
|
|
Windows installer | ||
Cygwin | standard package repository |
|
Mac OS X: |
|
|
Mac OS X 10.5 installer | ||
Mac OS X 10.4 installer | ||
Mac OS X via MacPorts | MacPorts repository | |
Mac OS X via Fink |
| |
Mobile: |
|
|
N800 |
To get the latest development version run:
bzr branch http://bazaar-vcs.org/bzr/bzr.dev bzr.dev
You can run directly from the source tree, or read the installation instructions.
After installing Bazaar you can add plugins or 3rdPartyTools, which add additional or experimental features.
If you have trouble with installation, please ask on #bzr in irc.freenode.net or consult the mailing list. (Your first list post will be held for moderation and then all others will go through automatically.)
Source for older releases
Older versions of bazaar are available from https://launchpad.net/bzr/+download
Plugins for Bazaar:
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 |
|
| ? | |
Bzr log in atom format. | |||||
bzr-pipeline | None |
| ? | ? | |
Work on large changes as smaller pieces | |||||
bzr-xmloutput | None |
|
|
| |
add --xml to log, status, annotate, missing, info, version and plugins | |||||
None |
|
| ? | ||
Simple helper to select files to commit. qcommit (from QBzr) and gcommit (from BzrGtk) are better alternatives. | |||||
countlog | None | Pileofrogs |
| ? | ? |
Easy activity summary showing how many times each file is changed and when most recent change took place | |||||
None | x |
| x | ||
diff plugin for office document such as Word/Excel and so on. | |||||
None | ? |
| ? | ||
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). | |||||
None | ? |
| ? | ||
diff plugin for external diff tools. | |||||
gnulog | None |
|
|
| |
GNU changelog formatter for bzr log | |||||
gzipped_bundle | None |
|
| ? | |
Allow create and merge gzipped bundles | |||||
htmllog | None |
|
| ? | |
Bzr log in html format. | |||||
nicehtml | None |
| ? | ? | |
generates an extended branch html information page using Jinja and pygments | |||||
interactive | None |
|
| ? | |
Adds user interaction to the core commands (only commit and record-patch for now) | |||||
lastlog | None |
| ? | ? | |
Shows most recent commit messages | |||||
lessdiff | None |
| X? | ? | |
Bzr diff in colour and paged with less (or $PAGER) | |||||
lesslog | None |
| X | ? | |
Bzr log paged with less (or $PAGER) | |||||
lightweight branching | None | ? |
| ? | |
Lightweight branching of lightweight checkouts | |||||
merge-into | None |
| ? | ? | |
Make it easier to merge another project into this one | |||||
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). | |||||
push-and-update | None |
| ? | ? | |
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. |
GUI (Graphical User Interfaces for Bazaar)
| Platform | ||||
Name | Part of | Owner | GNU/Linux | Windows | Mac |
Description | Home | ||||
None |
|
|
| ||
Desktop application for Windows, GNOME, KDE and OS X. Wraps QBzr and/or bzr-gtk applets. | |||||
None |
|
|
| ||
Branch Visualization | |||||
difftools | None |
|
|
| |
Graphical diff tools | |||||
None |
| bzr.exe |
| ||
Qt frontend for some of Bazaar commands |
Interoperability with other Version Control Systems
(See also BzrMigration)
| Platform | ||||
Name | Part of | Owner | GNU/Linux | Windows | Mac |
Description | Home | ||||
baz-import |
| ? | ? | ||
Convert Baz 1.x to Bazaar-NG | See BzrTools | ||||
bzrcvsserve | BzrCVSServe |
| ? | ? | |
Export Bazaar branches to CVS clients | |||||
cvsps-import |
|
| ? | ? | |
Import CVS branches into Bazaar, using cvsps to extract patchsets. Supports importing multiple branches | |||||
|
|
|
| ||
Fast loading of history into Bazaar from most popular tools. Supports multiple branches and mirroring. | |||||
None |
| X | ? | ||
Read-only support for Git branches | |||||
None |
| ? | ? | ||
Read-only support for Mercurial branches | |||||
None |
|
|
| ||
Support for Subversion branches |
Web interface
| Platform | ||||
Name | Part of | Owner | GNU/Linux | Windows | Mac |
Description | Home | ||||
loggerhead | None | yes | yes | yes | |
Recommended web interface for Bazaar (see also WebInterfaces for information about non-plugin web interfaces to Bazaar) | |||||
webserve | None |
| ? | ? | |
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. | |||||
automirror | None |
|
|
| |
Automatically update a remote working copy upon commit. | |||||
benchdisplay | None | Carl Friedrich Bolz |
| ? | ? |
Format bzr benchmark times as a nice HTML page | |||||
bisect | None |
|
| ? | ? |
Find the revision introducing a bug with a binary search | |||||
branchfeed | None |
|
|
| |
Create ATOM feeds in .bzr/branch/branch.atom during commit/push/pull (see also FeedGenerators for information about non-plugin feed generators) | |||||
bookmarks | None | Lukáš Lalinský |
|
| ? |
Bookmarking system for often used branch locations/URLs. | |||||
builddeb | None |
| ? | ? | |
Build Debian packages from Bazaar branches | |||||
bzr-bash-completion | None | Duc_Bao_Ta |
| X | X |
BASH completion for BZR | |||||
bzr-tcsh-completion | None |
| X | ? | |
TCSH completion for BZR | |||||
bzr-pqm | None |
| ? | ? | |
Submit commands to a PQM service | |||||
bzr-proe | None |
|
|
| |
Helper tools to use Bazaar together with PTC's Pro/ENGINEER | |||||
bzr-search | None |
|
|
| |
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 |
| ? | ? | |
Help avoid committing trailing white space and other undesired text. | |||||
checkeol | None | ? |
| ? | |
Pre-commit hook to check files for correct line-endings | |||||
None |
| ? | ? | ||
Submit commits to CIA | |||||
colocated | None |
| ? | ? | |
Colocated branches support (aka git-style branches) | |||||
dbus | None |
| ? | ? | |
Integrate bazaar with dbus | |||||
depend | None | ? |
| ? | |
Show versions of installed libraries used by bzr | |||||
diffstat | None |
|
| ? | |
Diff statistics | |||||
dns_cache | None |
| ? | ? | |
Cache DNS requests, greatly speeding up urllib.urlopen requests | |||||
None |
| ? | ? | ||
Send email after commit, e.g. to bazaar-commits mailing list | |||||
extcommand | None | Lukáš Lalinský |
| ? | ? |
Support for calling bzr-CMD scripts or aliases involving external programs from within bzr. | |||||
extmerge | None |
| ? | ? | |
Calls external merge tools to help resolve conflicts | |||||
file-revno | None |
|
|
| |
Efficiently returns the revision number(s) modifying a file. | |||||
foreach | ezbzr |
| ? |
| |
Iterates a command for each revno | |||||
graph-ancestry |
|
| ? | ||
Draw diagrams of branch history | See BzrTools | ||||
grep | None |
| ? |
| |
Grep through files known to bzr (experimental) | |||||
hgrep | None |
| ? | ? | |
Grep through history (experimental) | |||||
network_manager | None |
| X | X | |
Automatically use --local when network manager says connection is down. | |||||
notification | None |
| ? | ? | |
Send freedesktop.org notification dialogs when push or pull completes | |||||
pack_indices | None |
|
|
| |
Re-pack knit indices to give smaller downloads. | |||||
publish-bot | None |
|
|
| |
Publish commits to IRC | |||||
quickbranch | None |
| ? | ? | |
Make .bzrcache.gz of the .bzr directory at every commit (fast branching) | |||||
recursive-upgrade | None |
|
|
| |
Adds --recurse option to upgrade command | |||||
remove-revisions | None |
|
| ? | |
Completely remove revisions from a repository | |||||
None |
| ? | ? | ||
Rebase (like git-rebase) | |||||
repo-push | None |
|
| ? | |
Push a repository to a remote location, along with all its branches | |||||
repoalias | None | Marien Zwart |
|
|
|
"repo:" shortcut for the repository root | |||||
revnocache | None |
|
|
| |
Cache branch history for faster log and revno lookup | |||||
rspush |
| -? | ? | ||
Push a branch via rsync | See BzrTools | ||||
rxrename | None |
| ? | ? | |
Renames multiple files using a regexp | |||||
None |
|
| ? | ||
Organizing set of VCS branches as united project (experimental unofficial emulation of nested trees) | |||||
service | None |
| ? | ? | |
Keep bzrlib loaded in memory | |||||
setuptoolsbzr | None |
| ? |
| |
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 | ||||
|
| ? | |||
Temporarily set aside changes | See BzrTools (dev version at http://michael.ellerman.id.au/bzr/plugins/shelf) | ||||
shell-hooks | None |
| ? | ? | |
Support for running external commands in hooks. | |||||
stats | None |
|
|
| |
Show stats like authors or commits over time | |||||
testrunner | None |
| ? | ? | |
"Poor man's PQM": specify a command that must succeed before a change is allowed in a branch | |||||
touch | None |
| ? |
| |
Like *nix touch(1) but for bzr | |||||
undelete | None |
| ? | ? | |
Step through history and undelete to last known version of file(s)/dir(s). Allows searching history using regex for filename. | |||||
update-mirrors | None |
| ? | ? | |
Updates all the branches in a directory | |||||
upload | None |
|
|
| |
Upload *just* the working tree, and keep track of what has been sent for incremental uploads. Mostly oriented towards web development. | |||||
win32symlinks | None | X |
| X | |
Provide support for bzr internals for fake symlinks in cygwin format on win32 native. | |||||
x-bit | None | ? |
| ? | |
Control x-bit inside of bzr inventory. Primarily intended to use on win32 | |||||
None |
|
| ? | ||
Benchmark Bazaar on user provided source trees. | |||||
vimdiff | None |
| ? | ? | |
Display differences between revisions of a file, using vimdiff | |||||
webdav | None |
| ? | ? | |
Support writing to WebDAV branches |
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 |
| ? | ? | |
Modifies file-ids according to a list | |||||
graft | None |
| ? | ? | |
Graft branches onto the end of others | |||||
release | ezbzr |
| ? | ? | |
Merges a local branch into a remote one | |||||
reweave | None |
| ? | ? | |
Update history, inserting ghosts | |||||
None |
| ? | ? | ||
Submit changes by email and verify senders identity through gpg before applying it. | |||||
tags | None |
| ? | ? | |
Explicitly versioned tags. |
Obsolete
There are a number of obsolete plugins.
0 comments:
Post a Comment