HEXA BLOG

日記

HEXA BLOG日記2018.9.13

チーム制作でのバージョン管理

おはヨーソロー!

お久しぶりです。

最近遠出をすることが増えてきてバイクの免許を取ることにしたペ・イジュンです。

 

9月も半ばになり、学生さんはそろそろ夏休み気分が抜けてきた時期ではないでしょうか?

(社会人に夏休みはない)

そんな長期休暇が終わったばかりの9月ですが、3連休が2回あるというこれまた休みに恵まれた月でもありますね。

 

そしてそんな9月には待ちに待ったあのイベントがついに行われるのです!

 

ユニット対抗全国ツアー

Aqoursクラブ活動LIVE&FAN MEETING 2018

が!

 

という訳で生粋のCYaRon!推しの自分は2回目の3連休に、松山あたりに行ってきます。(そのためのバイク)

 

 

 

さて、個人的な話ばかり書いていても仕方ないので、そろそろまじめなことを書こうと思います。

 

これから書くことは学生や小規模のチームで個人的にゲームを作っているような人向けのものになります。

 

今の時代、ゲーム制作を行う場合においてもバージョン管理を使用するのは当たり前のことになってきていると思います。

svnやgitを使用すると無料でバージョン管理を行うこともできるので、学生や趣味でゲームを作っているような方でも気軽に使用できるものになっております。

そんな時代になっているので、3年前の学生時代の自分もTortoise SVNを使用しバージョン管理を使用しておりました。

 

その時に直面した問題があります。

個人で制作しているものに関しては、Tortoise SVNを使用してリポジトリを作成しバージョン管理を行っていたら問題なかったのですが、チームでバージョン管理を行うときに、

共通のリポジトリを参照するにはどのようにすればいいのだろうか?

という問題です。

 

個人で制作しているものに関しては自分のPCにリポジトリを作ったら問題ないのですが、チームで制作するときはチームメンバー全員から見れる場所にリポジトリを置く必要がありました。

ですが、メンバーはノートPCで作業しており、サーバサイドに強いメンバーもおらず、チーム用のNAS等もなかったので適切な配置場所がありませんでした。

結局当時はGoogle DriveやDropBoxのようなWebストレージでリポジトリを共有することで乗り切ったのですが、実質各自のローカルに別々のリポジトリを作っているようなもので、同時にコミットをしようものならリポジトリが壊れる危険性すらある状態での運用をすることになりました。

 

では他にどのような解決策があるかと考えてみると、例えばGitHubのようなものを使用するのも手だと思います。

ですが、Gitをブランチやリモートとローカルの概念、バイナリデータの運用など、Gitを使う上でわかっていないといけないことは多いのでアーティストやゲームデザイナーを含めたチームメンバー全員がGitに対する学習を行う必要が出てきます。

 

という訳で集中型のバージョン管理ができるSVNのリポジトリを共有したいとなったときにどういう手があるかなと考えると、Visual SVN Serverを使用する手もあります。

これを採用する場合はPC1台をリポジトリ管理用に生贄に捧げる必要があるのですが、チーム制作を行うときに1人くらいは使ってない古いPCを持っていると思うのでそれを使えばいいと思います。

Visual SVN ServerはApacheに対応しているので、ポートさえ解放しておくと、WAN経由でアクセスできるリポジトリを作ることができます。

例えばVisual SVN Serverでhexaというリポジトリを立てると、

https://グローバルIPアドレス/svn/hexa

のようなURLでインターネット経由でリポジトリにアクセスできるようになります。

Tortoise SVNでこのURLを使用することで、チェックアウトすることも可能です。

グローバルIPアドレスは固定で割り当てられる契約をしていない限りは変更されるものなので、DNSあたりでグローバルIPアドレスの問題を解決する必要があるのですが、探せばこのあたりも無料で何とかできそうなサービスもあるようです。(DNSはまだ自分で試してないです)

PC1台を生贄に捧げる用意があるのであれば、こういったアプローチもありかもしれませんね。

RECRUIT

大阪・東京共にスタッフを募集しています。
特にキャリア採用のプログラマー・アーティストに興味がある方は下のボタンをクリックしてください

RECRUIT SITE