ソースコードコラボレーションしたい
私が所属する企業では至るところでソフトウェア開発が行われているのですが、現場によってソースコードの管理方法もまちまちという状況です。開発に関する責任は現場で取ればよいのですが、ソースコードの管理ツールを統合することで権限管理も適切に運用できますし、ツールの利用ライセンスも安くできるので折角なら統合したいと考えてます、というのが前提です。
GitHub ってどれくらい使われてるの?
なんとなく、バージョン管理ツールはGitHub/GitHub Enterprise一択のような気がしますが、導入した際の経済的なメリット(ROI)と合わせて、現在の市場シェアも知りたくなりました。元エンジニアの端くれとしては今後Gitを使わない開発はありえないし、エンジニアを採用する際はGitをきちんと理解しているエンジニアを採用したい、またそういったエンジニアはGitHubが使えないと離れていってしまう(私見)。Gitを使うだけならGitLabという選択肢もあるが、なんとなくGitHubのほうがデファクトスタンダードのようにも感じる。では実際にどれくらいGitHubが使われているか調べてみました。
情報ソース
IntelliJを開発しているJETBRAINSが2019年にエンジニア約19000人を対象にアンケートを実施しており、その生データがあるのでここから集計しています。
(但し、アンケートの設計上「ソースコードコラボレーションをやっているけど、何を使っているかわからない」みたいな回答が可能になっているので、データの信憑性はそこそこと判断していただきたい)
結果
普段使っているツールは?
- ソースコードコラボレーションツールを使っている(GitHub, GitLab, Bitbucket)... 84.3%
既に多くの開発者がソースコードコラボレーションツールを使っているとのこと
ソースコードはどこで管理している?
- クラウド上(GitHub.com, Bitbacket) ... 27.4%
- デプロイされた場所(GitHub Enterprise, GitLab) ... 18.2%
- その他 ... 1.2%
なんか数字が合わない…アンケートデータを確認すると、「ソースコードは管理されているのは知っているが、何を使っているかを答えていない人」が結構な割合(半数程度)いる。
余談だが、以前、採用面談で「ソースコード管理はSourceTree使ってます!」って元気よく答えてきたエンジニアを思い出した。
バージョン管理ツールとして使っているものは?
- Git ... 38.19%
- SVN ... 3.93%
- Visual Studio Team Service ... 1.9%
- Microsoft TFS ... 1.7%
- 使ってない 1.9%
回答は重複を許すため、アンケート総数から割合を算出した。数字が小さいツールは割愛している。やはりGitが圧倒的。
ソースコードは何で管理している?
- GitHub ... 24.5%
- GitLab ... 13.7%
- Bitbacket ... 12.1%
こちらも回答は重複を許すので厳密ではないが、全エンジニアの約1/4はGitHubを(GitHubであると認知した上で)使っている模様
まとめ
ランチェスター戦略において、業界トップとなるための市場占有率の下限目標値は26.1%ということなので、GitHubは現時点でほぼ業界トップ・強者の地位であると言えます。一方で、GitLab・Bitbacketとはシェアは10ポイント差がついていますが、まだ完全に抜け出せているとは言い難いです。
まあこんな分析をしても、結局はOctocatが可愛いという理由でGitHubを使うんですけどね。
データ出典:https://www.jetbrains.com/lp/devecosystem-2019/
(JetBrains公式の数字とは違いますが、母数の計算方法が公式と異なるためです。ご承知ください。)