GitLab Advent Calendar 2016 5日目の記事です。
本日は、GitLab自体の開発がどのように行われているのか紹介します。
GitLabは無償版のCommunity Edition (以下CE) と有償版のEnterprise Edition (以下EE) があります。GitLab CEはOSSのため、自由に自身のサーバーにインストールして使用したり、ソースを修正してカスタマイズすることが出来きます。GitLab EEはプロプライエタリソフトウェアであり、使用するにはライセンスを購入する必要がありますが、ソース自体は公開されています。
GitLab CEとGitLab EEはともにGitLab.comのプロジェクトとして公開されていて、不具合の報告や機能追加のリクエストもそちらで受け付けています。
以前はGitHubのリポジトリで開発されていましたが、GitLabが法人化され自前のホスティングサービスの提供を開始したことにより、GitLabの開発もそちらで行われるようになりました。
現在、GitLabの開発は同名の会社であるGitLab社により行われています。
GitLab社はフルリモートの会社でチームメンバーは世界中に散らばっています。ちなみに、チームメンバーはサイトで公開されていて、現在は33カ国に144名の社員がいるようです。2015年の会社設立時は8名ではじめたらしいので、まさしく急成長中という感じです。
前述の通り、GitLabの開発はGitLab社により行われていますが、OSSコミュニティーからの貢献もとても大切にしています。今年の5月にはGitLabのコントリビューターが累計で1,000人を超えたことを記念して、希望者全員に対してステッカーが郵送で配布されました。私も微力ながらGitLabにコントリビュートしていたので、はるばるサンフランシスコよりステッカーが送られてきました。
最近もGitLabにマージリクエスト(GitHubで言うプルリクエスト)を3つ送ったのですが、数日以内にGitLab社の社員の方がレビューをしてくれて無事にマージされました。マージリクエスト上で社員の方とやり取りした印象ですが、コミュニティーからの貢献に対してGitLab社としてかなりのリソースを割いていると感じました。
最後に、GitLabはRuby on Railsで作成されているため、Railsエンジニアであれば比較的簡単にコードを理解し修正することができます。また、前述の通りGitLabはコミュニティーからの貢献をとても大切にしているので、OSSに貢献してみたいと思っているけど、どこから手を付けたら分からないというRailsエンジニアの方は、まずはGitLabにマージリクエストを送ることに挑戦してみてはいかがでしょうか?