Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

サイバーエージェントのGitHub活用 ~ 導入から運用体制、開発フロー、勉強会による現場への普及活動まで

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2014/09/09 14:00

 サイバーエージェントのアメーバ事業本部では、2013年4月よりGitHub Enterprise(以下、GHE)を標準リポジトリとして採用しています。 今ではエンジニアだけでなく、デザイナーやプロデューサーなどほぼ全員が利用しており、アカウント数も1000を超えました。

目次

 また、Organization[1]の数も360を超え[2]、リポジトリ数もOrganizationのものだけでも2000近く作られています[3]。 新規のプロジェクトは基本的にGitを利用しており、既存プロジェクトもほとんどがSubversion(以下SVN)などからGitに移行しました。

 本記事では、Ameba事業本部がどのようにGitを組織内に普及させていったか、その運用体制、現場でどのように利用されているのかをご紹介します。

[1] 複数アカウントをまとめるグループ機能です。リポジトリは個人単位だけでなく、Organization単位で作ることもできます。

[2] プロジェクト単位で1つのOrganizationを用意しています。

[3] 個人アカウントで作成したり、他からforkしたリポジトリは除いた数です。

 

GitHub Enterprise導入への道のり

 GHE導入以前の標準リポジトリはSVNでした。 Gitを使いたいというプロジェクトもありましたが、Gitの共通リポジトリは存在しなかったため、プロジェクトごとに個別にGitLabなどを立ててGitを利用している状況でした。

 やがてエンジニアの中から「Gitを標準リポジトリにしてほしい」という声が高まり、2013年にGitを正式導入することが決定しました。 GitリポジトリにはGHE以外にも、GitHub private、BitBucket、GitLab、Gitoriousなど様々な選択肢があります。 選定基準としては、セキュリティ、提供されている機能、運用のしやすさ、コストなどがありましたが、現場からはGitHubのようなソーシャルコーディングの環境が求める声も多かったため、ソーシャルコーディングのしやすさも重要なポイントでした。 そして総合的な判断の結果、GHEを採用することとなりました。

 こうして標準リポジトリとしてのGit環境が用意されました。 しかし、環境を提供するだけでは従来のSVNと併用されてしまい、導入前よりも現場の負担が増えてしまう懸念がありました。

 そこで現場にGitを浸透させ、組織内の標準リポジトリをGitで統一するために、一部のエンジニアたちが普及活動を始めました。 筆者もその一人であり、GHE導入前に、Git初心者を対象とした勉強会を開催しました。 標準リポジトリをGitに統一する動きはすでに伝わっていたため、勉強会に対する注目度は高く、エンジニアだけでなくデザイナーやプロデューサーも勉強会に参加してくれました。 会場参加者とライブ中継閲覧者を合わせると、300人以上が参加していたようです。

 なお、そのときに使用した資料がSlideShareにアップロードされています。19万を超えるPVを集めたこの資料は、その後、書籍『Git逆引き入門』や、本記事の執筆へとつながりました。

筆者が社内で開催したGit勉強会の様子
筆者が社内で開催したGit勉強会の様子

 

 他にもGitHub勉強会を開催したり、Gitを利用するためのGUIツールのマニュアル(下図)を用意したり、Gitに詳しいエンジニアがそれぞれの現場でサポートを行ったりと、みんなが、Gitを普及させるための努力を惜しみませんでした。

社内WikiにまとめられたGitツールのマニュアル
社内WikiにまとめられたGitツールのマニュアル

 

 その結果、GHE導入決定から実際に導入されるまでに1か月程度しかなかったにもかかわらず、ほとんどトラブルも起こらずにGitは現場に浸透していきました。 いまではエンジニアだけでなく、デザイナーやプロデューサーもしっかりGitを使いこなしています。

 こうして標準リポジトリはGitに統一されました。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 松下 雅和(マツシタマサカズ)

    1978年生まれ。SIer2社を経て、2011年に株式会社サイバーエージェントに入社。主にソーシャルゲームのサーバサイド開発やインフラ構築に携わる。関連スキルはJava、JavaScript、Node.js、MongoDB、Cassandra、AWS、Scrumなど。趣味はロードバイク、カメラ、ゲー...

おすすめ記事

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5