決め手はSubversionからの移行の容易さとHTTPとの相性

Google CodeがGitではなくMercurialを採用へ

2009/04/28

 米グーグルは4月24日、ソフトウェア開発プロジェクトのホスティングサービス「Google Code」で、これまでのSubversionに加えて分散バージョン管理システム(DVCS)の「Mercurial」のサポートを開始すると発表した。現在はプレビューリリースで、一部のプロジェクト利用者に提供。一般リリースに向けて、いくつかの課題を解決していくという。Google Codeでは、Mercurialサポートのために、一般のMercurialがオブジェクトの保存に使うOSネイティブのストレージに代えて、グーグルの分散データベースシステム「BigTable」を使うように書き換えたという。

googlecode01.png

 DVCSとしては、MercurialのほかにGitやBazaarが知られている。従来からある中央管理型のバージョン管理システムに比べて、分散開発がやりやすいことから、普及が進んでいる。例えばGitではLinuxカーネルだけでなく、Samba、Fedora、Ruby on Rails、GNOMEなど多くのOSSプロジェクトがGitを採用している。Mercurialを採用するプロジェクトとしては、NetBeans、nginx、ntfs-3g、OpenJDK、OpenSolaris、Python、XEmacs、Xenなどがある。プロジェクトホスティングサービスでは、GitHub.comがGit利用者の間で人気が高まっているほか、老舗のSouceForge.netも2009年3月にはGit、Mercurial、Bazaarのサポートを開始している。

【参考記事:分散バージョン管理Git/Mercurial/Bazaar徹底比較

 こうした流れからグーグルがDVCSのサポートを進めているのは自然なことだが、注目は、最近勢いを増しているGitではなくMercurialを採用したことだ。

 Mercurialサポート計画の発表と同時にグーグルが公開した比較分析資料によれば、GitではなくMercurialを採用した理由は以下の通り。

  • 学習曲線。Gitは多くのコマンドとオプションがあり、初心者には取っつきにくい。Mercurialはドキュメントも整備されていて、初学者に親切。SubversionやCVSといった過去のツールと、用語やコマンドが似ている。
  • Windowsサポート。GitはLinux由来の特色が強く、Windowsプラットフォームで正しく使うにはCygwinを利用する必要があること。
  • メンテナンス性。Gitはgit-gcなど、レポジトリの定期的なメンテナンスが不可欠。
  • ヒストリの重要性。Gitは非常に強力で、コマンドを叩けばあらゆる操作が可能。リモートサーバ上のレポジトリもコマンド1つで消えてしまう可能性があり危険。一方、Mercurialは変更不可のオブジェクトが蓄積していくだけ。
  • ステートレスなHTTP接続を使った場合のネットワークのパフォーマンスの良さ。

 一方、Gitが有利な点としては、

  • Client Storage Managementの存在。Gitでは古いリビジョンのオブジェクト削除など、ローカルのストレージ管理が柔軟にできる。
  • マージの際に親リビジョンの数に制限がない。Mercurialでは2つだけ。複数リビジョンのマージを1つずつ行う方法が好ましいものの、一気に複数のリビジョンをマージしたいときに、Gitは1度の操作で行える。
  • Rebase機能。Gitではブランチを作成した後に、その派生元を切り替えることができる。ただし、グーグルがGitとMercurialを比較検討した後に、MercurialはRebase機能を採り入れているという。

という項目があったという。

関連リンク

(@IT 西村賢)

情報をお寄せください:

Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

「ITmedia マーケティング」新着記事

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...

「TikTok禁止法案」に米大統領が署名 気になるこれからにまつわる5つの疑問
米連邦上院が、安全保障上の理由からTikTokの米国事業の売却を要求する法案を可決し、バ...

「気候危機」に対する理解 日本は米国の3分の1
SDGsプロジェクトはTBWA HAKUHODOのマーケティング戦略組織である65dB TOKYOと共同で、「...