Gitホスティングサービスはオンプレミスとクラウド、どちらが主流か。GitHub GitLab BitBucketのオンプレ版紹介と日米事情

Gitホスティングサービスのオンプレミス版とクラウド版の違い

Gitホスティングサービス・Gitプラットフォームサービスを使うのがGitでソースコードを管理する上では当たり前のようになってきました。サービスベンダーはクラウド版とオンプレミス版を提供していることが多く、企業は自社のセキュリティポリシーやベンダーに求めるサポートによってオンプレミス版とクラウド版を選択していることが多いでしょう。

各ベンダー・プラットフォームのそれぞれのオンプレミス版について紹介をさせていただきます。

GitHub Enterprise Server

GitHub.com のオンプレミス版です。現在のGitHubのライセンスモデルではGitHub Enterpriseのライセンスを購入するとGitHub Enterprise Cloud(GH)とGitHub Enterprise Server(GHE)の両方が同一ライセンスで利用することが出来ます。

GitHub Enterprise ServerではGitHub.comの機能が一部使えないものがありますが、基本的には全ての機能が使えると思っていただいて差し支えないと思います。

GitHub Enterprise Serverで使えない機能がいつ使えるようになるかは下記のGitHub社が公開しているロードマップを御覧ください。

https://github.com/github/roadmap/projects/1?card_filter_query=label%3Aserver

また、その他のベータ版の機能等についても同様のGitHub Projectで公開されています。

https://github.com/github/roadmap/projects/1

なおGHEの料金は$21 per user/monthとなっています。

月額決済はなく年額決済のみ・10人単位、など購入経路などによっても料金や体系が異なる可能性がありますのでぜひGitHub社、Microsoft社、代理店(マクニカネットワークス社など)などにお問い合わせください。

https://github.com/pricing

https://www.macnica.net/github/index.html/

GHEはクラスタリングをサポートしており、大人数での利用も可能です。

https://docs.github.com/en/enterprise/2.21/admin/enterprise-management/about-clustering

GitLab Enterprise Edition / Community Edition

おそらく日本のオンプレでのGit利用者ではGitLab Enterprise EditionとGitLab Community Editionはかなり多いのではないかと思います。選ばれる一番の理由は「無料プラン」が充実していることでしょう。

GitLab Enterprise Editionの無料プランでもWikiやCI/CD、Issue管理などの主だった機能は用いることが出来ます。同じ無料版のとGitLab Community Edition(GitLab CE)はプロプライエタリなコードが取り除かれた無料版のGitLab Enterprise Editionと機能としては同一です。

当然ながら無料プランではカスタマーサポートなどがありません。機能比較については下記をご覧ください。

https://about.gitlab.com/pricing/self-managed/feature-comparison/

無料プランでも十分な機能を備えていますが、細かなところで差が多く、可能ならStarter以上のプランのほうが便利かつサポートがあり企業にはおすすめでしょう。

Ultimateプランなどは非常に多機能ですが非常に高価であるため、ご自身がどの機能が必要なのかを比較表で見極めた上で選択することが必要です。

Starterプランの料金は$4 /user/month です。GHEのおおよそ5分の1の価格ですね。

https://about.gitlab.com/pricing/

GitLab EEの無料プラン(Starter)から上位プランにアップグレードすることは容易ですが、CEからEEの有料プランに切り替えるのは多少の手間を伴いますので、これからGitLabのオンプレミス版を導入されるなら、無料版でもGitLab EEを選択される方が良いでしょう。

なお、公式なサポートは有料ですが、コミュニティによるサポートも行われています。例えば、2020年8月11日時点ではgitlab-jpというSlack Workspaceで日本語でユーザ同士が質問をしあっています。公式のフォーラム(英語)もあります。

https://forum.gitlab.com/

GitLabはKubernetes(k8s)をサポートしているため、大人数で使う場合やCI/CDを多く使う場合などにはk8sを使うと良いでしょう。

Bitbucket

Atlassianが運営しているBitbucketのオンプレ版として、Bitbucket Data CenterとBitbucket Serverがあります。Data CenterはミラーリングやSAML2.0をサポートしたもの、Serverは単一サーバでの利用を前提としたものです。

値段としては2020年8月11日現在下記の価格で表記されています。

Serverが1回限りの購入で済み、100ユーザーの場合113万000円です。

Data Centerは、100ユーザの場合は78万4千円(年額)です。

https://bitbucket.org/product/pricing?tab=self-managed

実際のところ、Atlassian製品を包括的に利用できるライセンスを使っている企業などもあるかもしれません。こちらも料金は一概には言えないため、個別にお問い合わせください。

Bitbucket Cloudは元々Bibucketと呼ばれていたものです。Pythonベースで構築されているようです。一方で、Bitbucket Serverは以前までStashという名称で提供されていたものです。2010年頃にAtlassianはStashを保有していましたが、Bitbucketを買収し、両方の名称をBitbucketに統一しました。

全てをAtlassianスタック(JIRA、Confluence、Bitbucketなど)で固めている会社も多くあります。その一方で、JIRA、Confluenceは使っているけどBitbucketではなくGHEを使っている、という企業も特に日本国内では多く見かけます。

市場シェアにについて

このセクションはあくまで私自身の感覚値によるところが非常に大きいため、情報は正しくないかもしれないという前提で読んでください。

グローバルでの市場シェア

おそらく、全世界的なクラウド版のGitホスティングサービスのシェアとしてはGitHubが圧倒的なシェアを持っています。次に続くのは、BitbucketかGitLab ですが、両者のどちらがシェアが大きいか、公開されている情報からはわかりません。

登録ユーザー数などは一部公開されています。

・2020年1月、GitHubは4000万を超える登録ユーザー、1億を超えるリポジトリ

https://github.com/search?q=type:user&type=Users

※2020年8月11日時点では4177万人のようです。

・2019年4月、Bitbucketの登録ユーザー数が1000万人を突破

GitLabの場合は収益が公開されています。

・GitLabの収益は$100Mを超える

https://www.forbes.com/sites/alejandrocremades/2019/07/21/he-built-a-1-billion-business-where-all-700-employees-work-remotely/#5e3c74772aa9

いずれにせよ、この3サービスがGitプラットフォームとしては3強であることは間違いないでしょう。

日本での市場シェア

ここからは私がSiderのリリース当初(2014年)から今までの間、Gitをお使いの方やコードレビューをしている方々に営業・ヒアリング活動を行って得た情報や、Meetupやイベント登壇・参加などした際に聞いた情報からの推測値になりますが、日本で1番法人での利用ユーザー数が多いのはGitLabかGitHub Enterpriseだろうと思います。

GitLabについては無償版の利用者が殆どを占めており、正確なユーザーはGitLab社でも把握は難しいのではないかと思います。野良(会社が横断的に管理しているものではなくプロジェクトごとに立てているGitLabサーバー)も含めるとGitLabはかなりの人数の方がお使いでしょう。そしてこれは当然ながらオンプレミス版です。

もう1つのGitHub EnterpriseはGitHub社自身が「95%がオンプレ版である」と公開しています。そのため、法人利用としてはGitHub Enterpriseが非常に多いであろうことが推測できます。

https://youtu.be/8jGA7nKCKtA?t=1064

一方、Atlassian製品(JIRAなど)を購入しているメガベンチャー企業が、あえてBitbucketを使用せず、GitHub Enterpriseの導入企業として名を連ねているところを見ると、日本ではGitHub Enterpriseのシェアが圧倒的に多いであろうことが推測できます。

アメリカでの市場シェア

これらはGitHub、Bitbucket、GitLabなどを取り扱う代理店や、現地でのMeetupなどで開発者から聞いた話、また、Siderを営業する際にヒアリングした情報を元にした情報ですが、アメリカといっても東海岸と西海岸でかなりシェアは異なるようです。西海岸ではGitHub、Bitbucket、GitLabの順で多いものの(GitLabの無料ユーザーを除く)GitLabは他の地域に比べて多い。逆に東海岸ではGitHubとBitbucketは多いがGitLabは多くはない(GitLabの無料ユーザーを除く)、Bitbucketは西海岸よりも普及している、といった話を聞いたことがあります。

いろいろな聞いた話を元にした推測ですので本当に合っているかは全くわかりませんが、「有料ユーザー」のシェアとしては納得感はあります。

一方でGitLabの無料ユーザーを含んだ場合どうなるかは推測が難しいです。サポートがない無料のバージョンの物を資金力がある企業があえて選ぶでしょうか?

<2018年11月、Sider社が約100名にSurveyを取った結果>

上記はSider社が行ったアンケートによるものですが、GitHub Universeに参加している企業の方などを多く含む母集団に対して行ったアンケートであるため、GitHubが多いようにバイアスが掛かっています。また同一企業からの複数人回答を許容しているため、正しい情報とは言えません。ただし、BitbucketやGitLabが一定数いること(つまりGitHub含めて3強であること)、BitbucketのほうがGitLabより多いことなどは、バイアスを抜きにしてもおそらく正しい情報でしょう。

日本では会社としては資金はあるが開発部に決裁権がなくGitLabを選択している企業を多く見かけますが、アメリカではそうではないように思います。

個人的には日本の開発者のDX(Developer Experience)がもっと向上していってほしい、生産性を上げることに自分の時間ではなく会社のお金を使えるようになってほしいと思います。

おわりに

日米問わず企業でのGitプラットフォーム・サービスの利用はオンプレミス版が圧倒的に多いようです。少なくても日本ではクラウドで最大手のGitHubでさえ95%がオンプレミス版である以上、それ以上の比率がオンプレミス版を利用しているでしょう。

どのサービスを使うかはその企業が他に使っているサービススタックや、予算、また文化(GitHubが好きなユーザーが多い、など)などによって様々であり、これが正解というのはないでしょう。CIが含まれているGitサービスという点ではGitLabが今の所唯一ですが、BitbucketにもBambooがありますし、GitHubももうすぐGitHub ActionsがGHEでも利用可能になります。それぞれに特徴があるため個々での選定が必要でしょう。

ただし、ソースコード管理システムが未だSVNであったりCVSであったり、CI/CDする基盤や文化がない、コードレビューの文化がないといった場合、開発効率の向上・成果物の品質向上のため、GitHubやGitLabを導入することを強くお勧めします。

日本の開発者がより働きやすい環境になりますように。