# バージョン管理システム

 バージョン管理システム（Version Control System - VCS）はコンピュータ上でファイルの変更履歴を管理するシステムです。

 現在、ゲームを作成している際にミスをした場合、数回アンドゥ（元に戻す）操作を行って戻ることができます。しかし、これはプログラムを起動し続けている間のみ有効です。Unityを一度閉じて後で再起動した場合、それまでに行った変更を取り消すことはできません。

 さらに、誤ってファイルを削除してしまうこともあるでしょう。この場合、ファイルは失われてしまい、一から作り直すしか選択肢がありません。

 バージョン管理システムは、プロジェクトに加えた変更を記録し続ける仕組みです。これにより、タイムラインに登録した任意の時点まで、いつでも戻ることができます。

 また、バージョン管理システムはクラウドと連携して、作業のオンラインコピーを作成することができます。コンピューターが故障した場合でも、常にバックアップがあるため作業を復元できます。さらに、クラウドサーバーに残したコピーから作業を継続することで、別のコンピューターからでも作業が可能です。これにより、自宅でも学校でも同じプロジェクトで作業することができます！

 バージョン管理システムは共同作業（複数の人が同じプロジェクトで作業すること）も可能にしますが、この応用については来年学習します。

 今のところ、どのようなツールがあるかを見てみましょう：

- Mercurial：使いやすい無料ツールですが、最近は使用頻度が減っています。
- Git：人気のあるツールです。同じく無料で、Mercurialよりも少し使いにくいですが、非常に強力です。
- Perforce：通常ゲーム会社で使用されており、大きくて重いファイル（画像、テクスチャ、音声、メッシュ）の変更も記録でき、チーム開発により特化しています。Perforceは有料ソリューションなので、大企業のプロジェクトで見つけることがあるでしょう。

 このコースではGitの使い方を学習します。ただし、多くの概念は他のバージョン管理システムでも使用できます。

### ダウンロードとインストール

 Windows で git を使うために「git for Windows」のインストールしなければならない。

[https://gitforwindows.org/](https://gitforwindows.org/)

 ただし、git はコマンドライン（各操作をキーボードで打ち込む）のソフトなので、初心者にとって使いにくい。少し楽にするため、マウスで使える Windows のインタフェースがたくさんある。今回は、フリー、オープンソースの「GitExtensions」をおすすめする。

[https://gitextensions.github.io/](https://gitextensions.github.io/)

![image.png](https://class.illogic.games/uploads/images/gallery/2026-06/scaled-1680-/TGrimage.png)