Bazaar

Bazaar（バザー、以前のBazaar-NG、コマンドラインツールbzr）は、カノニカルが支援しているクロスプラットフォームの分散型バージョン管理システムである。誰でも簡単にフリーソフトウェアやオープンソースソフトウェアのプロジェクトに貢献できるように設計されている。

開発者チームは使いやすさ、正確さ及び柔軟性に焦点を当てて開発している。上流のコードをとても簡単にブランチ・マージできるように設計されており、いくつかのコマンドだけでも生産的に使うことが可能である。Bazaarはローカルなファイルを複数のブランチで作業する単独開発者でも、またネットワークを越えて共同作業するチームでも使うことができる。

2014年にエリック・レイモンドの提案によりGNU EmacsがBazaarからGitに移行したほか、Bugzilla、MySQLなども続々とGit等への移行が進んでおり、採用例は減少している。

BazaarはPythonで書かれており、FreeBSD、主要なLinuxディストリビューション、macOS、Solaris、Windows向けのパッケージが用意されている。またBazaarはフリーソフトウェアであり、GNUプロジェクトの一部である。

特徴 
BazaarのコマンドはCVSやSubversionにあるコマンドと全く同様であり、遠隔リポジトリサーバー無しで新しいプロジェクトを開始し管理するのはとても簡単である。

中央サーバを使わない純粋な分散型バージョン管理システムと比べて、Bazaarは中央サーバ有り・無しの両方での動作をサポートしており、同じプロジェクトに対し同時に両方の方法を使うことも可能である。LaunchpadというサイトはBazaarで管理されたプロジェクトのためのフリーなホスティングサービスを提供している。

Bazaarは何種類かの他のリビジョン管理システムでの動作をサポートしている。これはSubversionのような他のシステムからブランチし、ローカルでの変更を作り、Bazaarブランチにコミットし、後で他のシステムにマージし戻すことを可能にする。Bazaarはbzr-svnプラグインによってSubversionの基本的なサポートを持っている。 MercurialやGitのサポートのはしりもある。現在の機能は完璧では無いが、グラフィカルなヒストリを表示できるほどに互換性がある。

Bazaarは完全なUnicode文字セットからなるファイル名をサポートしている。またコミットメッセージやコミッター名などにもUnicodeを使用できる。

バージョン 1.xのリリースまで、BazaarはGitに比べてかなり遅かったが、以降、いくつかの操作に関しては性能的に追いついている。ネットワークのレイテンシがボトルネックとなっている状況であれば、他のリビジョン管理システムに十分匹敵している。

プラグイン 
 BzrTools - ユーティリティコレクション
 bzr-svn - Subversion形式のサポート
 bzr-git - Git形式のサポート
 bzr-rebase
 QBzr
 bzr-keywords

Windowsのインストーラには標準でBzrTools、bzr-svn、QBzr、TortoiseBZRが含まれている。

ユーザー 
バージョン管理にBazaarを使用する有名なプロジェクト:GNU Mailman、MySQL、GNOMEのJavaバインディング

歴史

Baz: 早期のCanonical Ltd.のバージョン管理システム 
"Bazaar" という名前は元々GNU archのクライアントであるtlaの派生によって使われていた。この派生は現在、現在のBazaarと区別をするためにBazと呼ばれている。BazはCanonical Ltd.の従業員Robert Collinsによって2004年10月にアナウンスされ、2005年までメンテナンスされており、その時にBazaar-NG（現在のBazaar）と呼ばれていたプロジェクトがBazの後継としてアナウンスされた。Bazは現在メンテナンスされておらず、Canonicalはそれを非推奨だとみなしている。Bazの最後のリリースは2005年10月にリリースされたバージョン1.4.3であった。計画されていたBaz 1.5のリリースは2006年に放棄された。

Bazaar 
2005年2月、以前に口頭やブログで多数のリビジョン管理システムの説明とレビューをしてきた開発者であるMartin Poolが、Canonicalに雇われて "オープンソースハッカーが利用を好む分散型バージョン管理システムの構築" の仕事を割り当てられたと発表した。公開されたウェブサイトとメーリングリストは2005年3月に作成され、2005年3月26日に付番された最初のプレリリースである0.0.1がリリースされた。

Bazaarは新しい実装で作られ、完全に異なるコードベースと設計であり、GNU archともBazとも多少異なるコマンドセットを持っている。当時開発中、他の種類のオープンソースのリビジョン管理システムの中からもっとも良いアイデアの下に分散され構築されるようにデザインされた。Bazaarは元々機能のためのテストベッドとして後でBazに統合するように意図されていたが、2005年中頃には主要なBaz開発者達の多くが主としてBazaarで直接作業を始めており、Bazは捨てられることとなった。

Bazaarのバージョン 1.0は2007年12月にリリースされた。2008年2月、BazaarはGNUプロジェクトになった。

停滞 
2014年にはBazaarを採用していたBugzillaがGitに移行するなど停滞傾向にある。Bugzillaでは移行の理由として、「Gitがデファクトスタンダードになりつつある一方、Bazaarは月に2,3のコミットがあるだけでほぼ死んだ状態にある」と述べている。

参照

外部リンク 

  
 freenode上の

バージョン管理システム
GNUプロジェクト
Python