いちばんやさしいゲームの作り方

文系の人でも、数理学がわからない人でもゲームプログラミングをマスターできるブログ

このサイトを読んでいると Subversion とか Chaw とか出てくるのですが、これはなんでしょうか?

答えはソースコードのバージョンを管理してくれるということです。…まったく人をなめた回答ですが、まずは次のようなシナリオをご想像ください。

10 人くらいでゲームを作っているとします。 Byerkut さんと yomogi さんはプログラマのツートップでガンガンソースコードを書いています。ゲームのソースコードは NAS を使ってメンバーで共有しています( NAS というのは LAN 上に置ける共有ハードディスクみたいなものです)。 Byerkut さんと yomogi さんはプロジェクトに参加する際に NAS からソースコードの一式を手持ちのパソコンにコピーして作業を始めました。

ある日 Byerkut さんは WinMain() を UNICODE 化する手法を勉強したので WinMain() が書いてある bootstrap.cpp を編集しました。めでたく WinMain() は _tWinMain() になり、プログラムのパラメータとして UNICODE が渡せるようになりました。さっそく、他の人にも使ってもらおうと bootstrap.cpp を NAS 上にアップロードしました。

時を同じくして yomogi さんは WinMain() 関数を巧みに隠蔽する方法を発見し、これを実装しました。めでたく bootstrap.cpp はカプセル化され、 Windows プログラミングの基礎知識を持たない人でも開発に参加できるようになりました。さっそく、他の人に使ってもらおうと bootstrap.cpp を NAS 上にアップロードしました。

さて、ここで問題が生じます。いったい何が問題になるのでしょうか?

そうです、かなり高い確率で bootstrap.cpp 内の Byerkut さんが編集した部分が消失します。 Byerkut さんと yomogi さんは、プロジェクトを開始する直後こそ同じ bootstrap.cpp を持っていましたが、お互いが同じファイルを更新してしまったために、先に編集してアップロードした Byerkut さんのコードが、後から編集してアップロードした yomogi さんのファイルによって上書きされてしまうのです。これを避けるためには後から編集する yomogi さんが、 bootstrap.cpp が Byerkut さんによって編集されていることを予測し、 NAS 上へアップロードされているであろう bootstrap.cpp の最新版を、あらかじめダウンロードしておかなければならないのです。

つまり、この問題を一言で言うと、「これから自分が編集しようとしているファイルは、他の誰かによって編集されているかもしれない。ゆえに作業に先立って最新版のファイルを入手しなければならない」ということです。これは面倒です。本格的なゲームとなるとファイルは 100 や 200 を超えますから、ちょっとした不注意から他人が書いたコードを上書きして消してしまうかもしれないという恐怖にさいなまれます。

これを解決するプログラムがソースコードのバージョン管理ツールなのです。

続きます

Contributions




Trackback URL

メルマガ登録・解除
 
挫折不可能!初級ゲームプログラミング完全マニュアル
RSS track feedいちばんやさしいゲームの作り方 カウンター
ブログSEO対策:track word あわせて読みたい SEO STATUS