
Unity Version Control

Unity Version Control とは何ですか?
Unity Version Control は、スケーラブルでエンジンに依存しないバージョン管理およびソースコード管理ツールであり、分野を超えたコラボレーションを促進します。大きなファイルやバイナリを高速に処理でき、集中型ワークフローと分散型ワークフローの両方を組み合わせているため、アーティストとプログラマーの両方が必要な方法で作業できます。
Unity エディターで Unity Version Control を使用する
このガイドでは、以下のいずれかのエディターバージョンで Unity でVersion Control を設定する方法について説明します。
- 2019.4.29f1 以降
- 2020.3.15f1 以降
- 2021.1.15f1 以降
- 2021.2.0b6 以降
- 2022.1.0a4 以降の任意のバージョン

1.Version Control を Unity に接続
まず、Unity ID を Unity Version Control に接続してから、組織を選択するか、新しい組織を作成します。
- まず、右上のツールバーのUnityVersion Control アイコンをクリックして、UnityでUnityVersion Control を開きます。セットアップを完了するように求めるウィンドウが表示されます。
- [ログイン] または [サインアップ] をクリックすると、 Unity Version Control が Unity ID に自動的に接続されます。
- 次に、Unity ID が組織と関連付けられていない場合は、組織を作成するようプロンプトが表示されます。すでに組織に属している場合は、ドロップダウンメニューから 1 つの組織を選択して参加できます。

その 2:2. 2. 自分のワークフローに最適なワークスペースを作成する
- 次に、Unity Version Control ウィンドウに戻り、「ワークスペースを作成」をクリックします。
- Unity Version Control は、リポジトリ (共有ファイルと履歴) とワークスペース (ローカルコピー) の両方の名前を提案します。既存の Unity Version Control リポジトリを使用する場合は、リポジトリ名の横にある 3 つのドット (:) をクリックし、リストからリポジトリを選択します。
- 次に、希望する種類のワークスペースを選択します。Unity Version Control は、ゲーム開発と 3D プロジェクトに最適化されたバージョン管理システムです。そのため、同じリポジトリ内の個別のワークフローをサポートします。プログラマー向けのプラスチックワークスペース(分散型)とアーティスト向けのGluonワークスペース(一元化)を設計しました。

3.3. 3. プロジェクトに関連付けられたアセットファイルを追加する
- 次に、Unity Version Control は、アセットフォルダーのプロジェクトファイルを [保留中の変更] タブに表示します。ファイルを選択し、「変更セットをチェックイン」をクリックすることで、そのファイルをリポジトリに追加できます。特定のファイルを選択して追加することも、すべてのファイルを追加することもできます。
- Unity エディターから設定されると、Plastic SCM で適切なフォルダーとファイル(パッケージファイルやプロジェクト設定)のチェックインが自動的に行われます。それらは「変更セット」タブで確認できます。
- 最初のアセットのチェックインが完了すると、Unity のVersion Control が設定され、作成の準備が整います。

4.デフォルトで無視するよう設定されているファイル形式
さらに、プロジェクトのルートにある ignore.conf ファイルには、デフォルトで無視すべきファイルを記述したリストが保存されています。このファイルを編集し、無視リストにファイルを追加したり、リストからファイルを除外したりできます。

5.チームメンバーを Unity Version Control に招待する方法
- チームメンバーをプロジェクトに招待するには、Unity の「Version Control」タブのオプションメニュー (歯車のアイコン) をクリックし、「メンバーをワークスペースに招待」を選択します。
- Unity Version Control クラウドダッシュボードが表示されます。ここで、新規ユーザーの追加、招待状の再送信、アクセス権限の設定を行うことができます。
注意:Unity Version Control クラウドダッシュボードにサインインしていない場合は、Unity ID でログインするように求められることがあります。

6.6. 6. 変更のチェックインとファイル履歴の基本
プロジェクトに保存した変更をチェックインし、リポジトリに送信する操作は、「保留中の変更」タブで行います。
「変更セット」タブには、リポジトリに対して加えられた変更や、その変更を加えたユーザーなどのプロジェクト履歴が表示されます。リストされている各チェンジセットをクリックすると、そのチェンジセットの影響を受けたファイルを確認できます。
また、各ファイルを右クリックして「ファイルの履歴を表示する」を選択することで、そのファイルの履歴を確認できます。履歴には、そのファイルに加えられた変更の一覧が表示されます。以前のバージョンを右クリックして、[ファイルをこのリビジョンに戻す] を選択できます。
他の場所でのUnityVersion Control
Unreal Engine、サポートされていない Unity バージョン、または別のエンジンを使用している場合でも、フルクライアントをダウンロードすれば Unity Version Control の全機能を引き続き使用できます。

1.ダウンロードしてワークフローを選択する
- まず、Plastic SCM の Web サイトから Unity Version Control をダウンロードし、インストールウィザードの指示に従います。
- 完了すると、希望する種類のワークフローを使用して起動するように求められます。アーティストとプログラマーがコラボレーションする際の衝突を最小限に抑えるため、Version Control では別々の GUI を用意して、同じリポジトリ内の 2 つの異なるワークフローを容易にします。
- Plastic オプションはプログラマー向け、Gluon インターフェースはアーティスト向けに設計したものです。
- この選択は後で変更できます。クライアントの右上のメニューを使用して、Gluon インターフェイスと Plastic インターフェイスを切り替えることができます。

その 2:ログインして Unity Version Control をセットアップ
- 次に、サインインするかアカウントを登録するよう求められます。プロジェクトのエンジンとして Unity を使用しない場合でも、Unity ID を使用することをお勧めします。

3.組織を選択または作成する
- 上に示すように、Plastic のホーム画面が表示されます。アカウントに組織が 1 つも関連付けられていない場合は、組織を作成するように求められます。それ以外の場合は、使用する既存の組織を選択できます。
- 既存のリポジトリがある場合は、左側に一覧が表示されます。そのどれかをクリックすると、作業用のコピーを取得する前にリポジトリの内容を参照できます。

4.リポジトリとワークスペースを選択または作成する
- 「+」をクリックして新しいリポジトリを作成するか、リポジトリのどれかを選択し、青いダウンロードのボタンをクリックしてワークスペースを作成してから、作成したワークスペースをリポジトリと同期します。
- ディスク上のパスの場合、プロジェクトのファイルが現在置かれているディレクトリを選択してください。

5.パッケージとプロジェクト設定ファイルを追加する
- これで Unity Version Control クライアントがプロジェクトを開きます。
- 前のステップで既存のプロジェクトにリダイレクトされた場合は、「保留中の変更」タブに移動し(上に示す開発者インターフェースを使用している場合)、すべてのパッケージとプロジェクト設定のファイルとフォルダーを選択してから、「チェックイン」をクリックしてそれらをコミットします。

6.アセットファイルを追加して制作を開始する準備を整える
- 次に、作業を開始するためにリポジトリに追加する必要があるアセットフォルダーとファイルを選択し、再度「変更をチェックイン」をクリックします。
- それらが非公開に設定されている場合は、「ワークスペースエクスプローラー」に戻り(Gluon では「エクスプローラー」)、ファイルを探してそれらを右クリックし、「ソース管理に追加」を選択してから、「保留中の変更」タブでチェックインを完了します。
- これで Unity Version Control の設定が完了し、作成の準備が整いました。
7.デフォルトで無視するよう設定されているファイル形式
さらに、プロジェクトのルートに ignore.conf ファイルがあり、ここにデフォルトで無視されるファイルを示すリストが保存されています。このファイルを編集し、無視リストにファイルを追加したり、リストからファイルを除外したりできます。

8.別のクライアントを使用した変更のプッシュ
エンジンの外部でスタンドアロンの Unity Version Control クライアントを使用する場合、クライアントを使用してプロジェクトに保存した変更を別のウィンドウでチェックインする必要があります。
プロジェクトに加えた変更をチェックインし、リポジトリに送信する操作は、「保留中の変更」タブ(Gluon では「変更をチェックイン」)で行います。

9.クライアントでファイル履歴を確認してファイルを元に戻す
「変更セット」タブには、リポジトリに対して加えられた変更や、その変更を加えたユーザーなどのプロジェクト履歴が表示されます。一覧にある変更セットをダブルクリックすると、その変更セットの影響を受けたファイルを確認できます。
また、各ファイルを右クリックして「ファイルの履歴を表示する」を選択することで、そのファイルの履歴を確認できます。履歴には、そのファイルに加えられた変更の一覧が表示されます。また、以前のバージョンを右クリックして「Revert file to this revision(ファイルをこのリビジョンに戻す)」を選択することもできます。

10.Unity Version Control をアンリアルエンジンに接続する
Unreal Engine で Unity Version Control を使用している場合は、ほとんどのタスクで個別のウィンドウを維持しなくても、エディタ内でソースコントロールを使用できます。Unreal Engine プラグインの詳細については、以下のリンクで確認できます。
その他の役立つリソース

隠れた生産性コストを見つけましょう
スタジオが最も得意とする制作の進行を妨げる、バージョン管理に関わる最も一般的な 3 つの落とし穴について、製品チームやエンジニアリングチームからインサイトを集めました。

タスクブランチのワークフローを実装する
高速かつ柔軟なワークフローと理念をご自分のチームに導入する方法をご確認いただけます。効率的なタスクブランチワークフローは、チームが継続的な変更フローを通じてスピードを上げるのに役立ちます。

プロジェクト組織とベストプラクティス
バージョン管理の主な概念と、Unity プロジェクトを設定する際に使用できるヒントやコツを学び、チームのコラボレーションが円滑かつ効率的になるよう支援します。