米Microsoftは6月4日(米国時間)、米GitHubを75億ドル(約8200億円)で買収すると発表した。翌週の6月12日(日本時間)にはGitHubが東京都内でGitHub Satelliteというイベントを開催し、記者会見では「Microsoftが買収してもGitHubの運営には手を着けない」という両社間での合意があったことが語られた。
GitHubについて、開発者ではない多くの読者にとっては「オープンソースのプロジェクトが保存されている場所」程度の認識で、Microsoftが膨大な資金を使って買収するだけの価値がどれほどあるのか(しかも運営に手は着けないという)、ピンとこないかもしれない。
本稿では「そもそもGitHubとは何だろう」という観点から少し掘り下げた後、米国オフィスを訪問したレポートをお届けしたい。
GitHub自体は10年の歴史だが、その歩みはオープンソースのカルチャーと密接な関係にある。「Git」というファイルのバージョン管理を行う仕組みがあり、これをWebサービスとしてホスティングする形で幅広い開発者が情報を共有できるように提供したのがGitHubだ。
Gitをサポートした同種のサービスは複数存在し、GitHubはその1つという位置付けとなる。だが今日、多くのオープンソースプロジェクトがホスティングされ、総リポジトリ数で8500万、ユーザー数ベースでは2800万と膨大な規模に成長しており、デファクトスタンダードに近い存在にある。
Gitという仕組みは、もともと世界中に散在する複数のメンバーが開発に参加するLinuxのような大規模プロジェクトにおいて、バージョン管理の必要性に迫られて誕生したものだ。古いスタイルでは個々の開発者によるソースコードへの変更を最終的にマージしなければならないが、この管理が非常に複雑で重荷であり、Linuxの開発において足かせとなっていた。
当初LinuxプロジェクトはBitMoverの「BitKeeper」を「オープンソース開発者は無料で利用可能」という条件で2002年から採用していたが、商用のプロプライエタリなツールをオープンソース開発に使うことへの懸念を関係者らが抱いていた。また、同種のツールの開発に携わる関係者の締め出しを明記したライセンス条項などの問題も存在していた。
最終的には、2005年に一部開発者のリバースエンジニアリングを機にしたライセンス条項の変更によって無料での提供が中止され、Linuxの生みの親であるリーナス・トーバルズ氏らを中心に、その代用となるGitプロジェクトがスタートした。現在、GitプロジェクトはGitHub上にホスティングされている。
こうした中、GitHubのサービスはクリス・ワンストラス氏、ピージェー・ハイアット氏、トム・プレストン・ワーナー氏を中心として、2008年にスタートした。GitHubのリポジトリにはGitコマンドの標準的なインタフェースを通じてアクセスが可能で、かつ開発者らが自身のプロジェクトの推進に便利な各種機能を盛り込む形でサービスが提供されている。
GitHubが先進的だったポイントは幾つかある。1つはソーシャルネットワーク的な機能のインタフェースを導入したこと、もう1つは今日ではほとんどの類似サービスで導入されている「Pull Request」の仕組みを率先して取り入れたことにある。
Pull Requestとは、コードやドキュメントに変更が加えられたタイミングなどにメンバーへの通知が行われ、その変更に対してレビューやコメントを行うことが可能な仕組みだ。これにより、正式なリリース前のブラッシュアップで質の高い製品を提供できる。コードを直接いじらないメンバーも参加でき、プロジェクト全体でリリース前の情報共有やレビューを行えるメリットがある。
こうした開発スタイルはオープンソース関係者を中心に、感度の高い先進的な開発者や企業らによって早期に導入され、日本国内でも2010年代後半にはさまざまなプロジェクトで散見されるようになった。
Copyright © ITmedia, Inc. All Rights Reserved.