チーム開発勉強会が開催されました(1)

去る6月27日(土)、ゆうMUGの本拠地・永山公民館にて「チーム開発勉強会」が開催されました。参加者こそ5名と少なかったものの、非常に熱のこもった質疑が展開されました。

本日のお題

本日のお題
こんな感じの内容でした

本日はチーム開発、具体的にはXcode、 Unityなどの開発環境からGit、GitHubといったツールを使ってソースコードの共有を行う方法について勉強しました。また、サポートツールとして非常に便利なSource Treeの基本的な使い方についても実際に体験してみます。

Gitとは

基本的な考え方

まずは、Gitそのものについて公式ガイドブックの挿絵などを参考にして理解を深めます。一応は大本山となるサーバ(リポジトリ)が存在するものの、基本的にはそれぞれの作業者が手元のリポジトリに対して作業を行う分散システムであるということ、またファイルの変更履歴を管理するのではなく、その時々のプロジェクトの状態、スナップショットを管理する方式であることなどを学びました。

Git用語いろいろ

また、この段階でGit用語についても学んでおきます。「コミット」「チェックアウト」「リポジトリ」「ステージング」など、普段は耳慣れないがGitでは頻発する単語について、意味をしっかり理解しておくとその後の上達が早そうです。

gitignore

gitignore
管理しないファイルを設定する方法を学びます

次は、Gitを使う上でとても大切な概念である「管理しないファイルの設定」についてです。Gitにより、非常に手軽にプロジェクトの共有ができる反面、不必要なファイル、共有してはならないファイルなどが共有されてしまう事故が発生する可能性が否定できません。Gitの利用を開始する前に、適切にgitignoreファイルを記述することでこれらの事故を防止できることを学びました。また、何を書いたらいいか分からない時には、まずはGitHubが提供するひな形からスタートするのが良さそうです。

ブランチ

基本概念の最後は「ブランチ」です。Gitでは歴史を枝分かれさせて管理することができ、そのひとつひとつをブランチと呼んでいます。ブランチはいつでも自由に作成することができるため、チーム開発を進める上では一定のルールに従って管理する必要があります。ここではまだ詳細には踏み込まず、ブランチという概念だけを学びました。

実習

ひととおり概念を学んだところで、Source Tree、Xcode、Unityをつかった実習を行いました。専用ツールであるSource Tree、Gitが統合されているXcodeについては、最初はとっつき難いですが、慣れればなんとかなりそうです。

UnityとGit
UnityのプロジェクトをGitで管理するコツ

一方、Unityについては(Version 4では)Gitと統合されておらず、また一部のファイルがGit管理しにくい形式になっていることから、事前にプロジェクトを手直しておくことが望ましいと言われています。この辺、最新版や今後のバージョンではどのように変わっていくのでしょうね。


次回は…

とりあえずGitが使えるようになったので、今度はGitHubを使ったプロジェクトの共有について学びます。また、いくつか知られているブランチ管理手法の中から「Git Flow」について学び、実際にGit Flowとプルリクエストを使ったソースコードの修正方法を学びます。

次回は、参加してくださった皆さんのコメントなどもご紹介する予定です。引き続き、ゆうMUG公式ウェブサイトのチェックをよろしくお願いします。


 関連記事

参考リンク