2008年11月10日

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 上で翻訳の修正ができるので、アカウントを取ってみては如何でしょうか?

@methane

klab_gijutsu2 at 21:03│Comments(1)TrackBack(0)Python 

トラックバックURL

この記事へのコメント

1. Posted by まーくん(レンタルサーバー研究者)   2009年05月05日 15:41
こんにちわ。、まーくんです。

Bazaar ってなんですか?
聞いたことなかったです。
でもバージョンアップされたってことは
使いやすくなったんですね、
私も機会があったら使おうかな
また来ます

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔   
 
 
 
Blog内検索
このブログについて
DSASとは、KLab が構築し運用しているコンテンツサービス用のLinuxベースのインフラです。現在5ヶ所のデータセンタにて構築し、運用していますが、我々はDSASをより使いやすく、より安全に、そしてより省力で運用できることを目指して、日々改良に勤しんでいます。
このブログでは、そんな DSAS で使っている技術の紹介や、実験してみた結果の報告、トラブルに巻き込まれた時の経験談など、広く深く、色々な話題を織りまぜて紹介していきたいと思います。
最新コメント
最新トラックバック
Archives