Mercurial 2.0リリース、バックポートに有用な「graft」コマンドやサイズの大きいバイナリファイルを効率よく扱う拡張などが導入される

 Mercurial Projectは11月1日、分散型バージョン管理システム「Mercurial 2.0」を公開した。Mac OS X、Windows、Linuxなどに対応、プロジェクトのWebサイトよりダウンロードできる。

 MercurialはPythonで作成されたソースコードバージョン管理システムで、クロスプラットフォーム対応、拡張性、高速さ、使いやすさなどを特徴とする。ライセンスはGPL v2。

 Mercurial 2.0では、新たに「graft」コマンドとlargefiles拡張が導入された。graftコマンドはブランチに加えられた変更を別のブランチに適用するコマンド。ほかのマージコマンドと異なる点として、ヒストリグラフをマージしない点が挙げられる。より新しいブランチに加えられた変更点を古いブランチに適用するバックポートの際などに有用だという。

 largefiles拡張は、圧縮や比較、マージが難しい大型のバイナリファイルに対応するもの。このようなファイルはMercurialのストレージフォーマットではうまく処理できない。largefilesはこの問題を解決するための機構で、largefilesとして追加されたファイルはそのチェックサムを使ってリビジョン管理が行われるようになる。また、レポジトリをクローンしたり、pull操作を行った場合は古いリビジョンのファイルはダウンロードされず、最新のリビジョンのものだけがダウンロードされる。これによりディスク容量やネットワーク帯域を節約できるという。

 このほか、commitやimport、revset、revert、log、hgweb、subrepoコマンドなどにオプションやキーワードの追加といった変更が加えられている。機能強化やバグフィックスも多数行われている。

Mercurial Project
http://mercurial.selenic.com/