濃縮還元オレンジニュース

個人で簡単に使える分散バージョン管理ツール「Mercurial」

みなさんは仕事でCVSやSubversion、Visual SourceSafeなどのバージョン管理システムを利用しているでしょうか。これらメジャーなバージョン管理システムはいずれも、サーバを立てて1つのリポジトリを管理する中央集権的なものです。

それに対して、開発者ごとにリポジトリを持ち互いのリポジトリと同期させる方式を持った分散バージョン管理ツールもあります。Mercurialはその一つで、ほかにはLinuxやRuby on Railsが採用しているgitなどがあります。

記事では、Subversionとほぼ同じ感覚でコマンドが使えるMercurialの使い方を一通り説明しています。主なコマンドは表1のようになります。

表1 Mercurialの主なコマンド()
動作説明コマンド
カレントをバージョン管理するhg init
ファイルを追加するhg add
コミットするhg commit
diffをとるhg diff
状態を確認するhg status
HTTPサーバを立ち上げる(Webブラウザで閲覧できる)hg serve

ブログ筆者は一通り使ったあとに「Subversionなどの集中型のバージョン管理ツールよりも難しい印象があったけど、むしろそれよりもわかりやすくて便利」とまとめています。

EclipseやNetBeansのプラグイン、WindowsクライアントのTortoiseHgがあるなど、周辺ツールが比較的充実しているのも魅力の一つです。

ちなみに私が自身のMacで試したところ、コミット時に

transaction abort!
rollback completed
abort: unknown encoding: X-MAC-JAPANESE, please check your locale settings

とエラーが出ましたが、シェルで「export HGENCODING=UTF-8」のように環境変数を設定すると回避できるようです。

URLhttp://www.machu.jp/diary/20080311.html#p01

おすすめ記事

記事・ニュース一覧