Bazaarの紹介
私は以前までバージョン管理システムには Mercurial を利用していたのですが、 最近 Bazaar に移行しました。 先日 1.9 がリリースされましたので、これを機に Bazaar を紹介します。
現在、日本で一番使われているバージョン管理システムはSubversionだと思うのですが、 最近は分散型のバージョン管理システムがオープンソース界で人気になっていて、Bazaarはその一つです。
分散型バージョン管理システムの利点はたくさん有るのですが、個人的に便利だと 感じる点は、(1)ネットワークにつながっていなくてもバージョン管理できる、(2)Subversion よりもマージが楽、(3)リポジトリのバックアップが楽、というところです。
分散型バージョン管理システムでよく使われているものに、git, Mercurial (hg), Bazaar (bzr) があります。git は Linux Kernel や Ruby on Rails で、 Mercurial は OpenJDK や Open Solaris で、 Bazaar は Ubuntu Linux の開発や MySQL で使われています。
Bazaarの利点
いくつかのバージョン管理システムの中で Bazaar を選ぶ理由について、Bazaarのサイトに載っています。
個人的に「Bazaarエライ!」と思う点を挙げてみます。
1. 日本語ファイル名の扱い
gitやMercurialはファイル名を「バイト列」として扱います。 なので、Windowsユーザーがコマンドプロンプトでファイルをコミットしようとすると、 ファイル名はcp932エンコードでコミットされます。これをLinuxでcheckoutすると、 Linuxのlocaleを無視して、cp932ファイル名でファイルが作られてしまいます。
それに対して、Bazaarはファイル名を「Unicode文字列」として扱います。 コマンドライン引数のファイル名は、Windowsであればコードページ、Linuxであればlocaleに 基づいてデコードされます。 なので、Mercurialやgitのような問題は起こりませんし、「表」「ソ」といった 2バイト目に '\' (0x5c) が入っているパスでも問題が起きません。
2. TortoiseBzr の存在
Bazaarのダウンロードページ から、Windows Standalone Installer (まだ 1.9 は RC までしか installer がReleaseされていませんが、そのうち出ると思います) をインストールすると、TortoiseBzr や bzr-svn (BazaarをSubversionクライアントとして使えるプラグイン) をまとめたバイナリがダウンロードできます。
この TortoiseBzr は、TortoiseSVN のように使うことができます。1.9rc1のTortoiseBzrを少し使ってみたのですが、 特に日本語の化けもなく、普通に使えている様です。
3. Bazaarをインストールしていないサーバーにリポジトリを置ける
Bazaarは、ssh+bzrというプロトコルの他に、sftpやftpでサーバー上のリポジトリに対して push/pull が できます。 また、リポジトリを読み込み専用で公開したい場合、単にリポジトリをApacheによって公開されている ディレクトリに 置くだけで済みます。
なので、例えばFTPしか利用できないレンタルサーバーでも、Bazaarリポジトリ置き場にして、そのリポジトリを 公開することができます。sshでログインできるサーバーがあったとしても、セットアップ作業が要らないのは 便利です。
Launchpadについて
バージョン管理に Bazaar を使ったオープンソースプロジェクトのホスティングサービスに、 launchpad があります。 Bazaar リポジトリのホスティングの 他にも、バグ管理、アイデア管理、翻訳、メーリングリストが利用できます。Ubuntu Linux や MySQL もここで開発されています。
Bazaar ユーザー以外にも、例えば Ubuntu Linux ユーザーであれば、「このアプリの日本語訳間違ってる」と 思ったときに launchpad 上で翻訳の修正ができるので、アカウントを取ってみては如何でしょうか?
トラックバックURL
この記事へのコメント
Bazaar ってなんですか?
聞いたことなかったです。
でもバージョンアップされたってことは
使いやすくなったんですね、
私も機会があったら使おうかな
また来ます