執筆: K.S
はじめに
開発現場で同じプロジェクトやシーンデータに対して『複数人が同時に作業を行う時』、
どの人が最新のデータを更新したかを仮にエクスプローラー上だけで管理するとしたら難しいと思います。
そこで、「バージョン管理システム」を使ってファイルの更新履歴を管理することが大切です。Plastic SCM、Perforce、SVNなど、バージョン管理システムには色んな種類がありますが、今回はGitHubの操作についてご紹介いたします。
この記事の内容
- GitHubの登録とアプリのインストール
- 〈リポジトリ〉の作成と設定
- データサイズの制限について
GitHubの登録とアプリのインストール
まずはhttps://github.co.jp/で、GitHubのアカウントが無料で作成できます。
アカウント、パスワードを入力したら、登録が終わり、下記のメイン画面に入ります。
最初は何も入っていないので、新しい「リポジトリ」を作成して、ファイルをアップしてみましょう。
※リポジトリとは、「貯蔵庫」「格納庫」の意味を持つ英単語です。バージョン管理システムでは「ファイルとか変更履歴とかを置いておく場所」のことを指します。
リポジトリの作成と設定
メイン画面の左上の「Create repository」を押して、下記の設定画面に入ります。
以上の設定を行い、Create repositoryをクリックします。
新しいリポジトリが追加されました。
これでみんなでファイルを追加したり、編集したりすることができます。
赤枠の部分をクリックすると、リポジトリの管理画面に入ります。
こちらでどのデータが入っているかや更新履歴が確認できます。
プロジェクトに対して、複数人が同時に作業を行う時、共有リポジトリに保存するファイルとローカルのワークスペースでいじったファイルを管理する大体の流れは以下の画像のようになります。
上記のワークフローで、リポジトリ上のファイルの更新状態を随時把握できればありがたいので、「GitHub Desktop」という便利なアプリを紹介します。
上記リンクからダウンロードして、インストールします。
GitHubと同じアカウントでサインインしたら、メイン画面に入ります。
これからはクラウドサービスに保存するファイルをコピーして、ローカルのワークスペースを設定します。
Add➡Clone repositoryをクリックします。
testProjectを選択し、ローカルワークスペースの保存先を選択します。
Cloneをクリックすると、testProjectと同じ構造のフォルダが複製されます。
次はローカルのファイルをリポジトリにアップする操作について説明します。
例として、テキスト001.txtというファイルをローカルのフォルダにコピーします。
1.GitHub Desktopでファイルの追加を確認
2.Commit to mainをクリックします
3.メイン画面の右上の「Fetch origin」が「Push origin」に変わりますので、それを押すとファイルがアップされます。
逆に、私以外の作業者はGitHub DesktopのFetch originを押して更新を確認すると、「Pull origin」の状態になり、テキスト001.txtをダウンロードすることができます。
ファイルサイズの制限について
これまでの操作で、テキストファイルをうまくアップしましたが、GitHubは元々ソースコード向けのツールなので、ファイルサイズが100MBを超えるとpushできないという制限があります。ゲームやとCG業界で扱うのデータで100MBより大きなファイルはよくあるので、それは困るでしょう。
そこで、GitLFS、Git Bashというツールで解消する方法があるので、ご紹介します。
まずはGitLFS、Git Bashをダウンロードして、インストールします。
あとは試しに「UploadTest.ma」というMAYAデータをローカルワークスペースに追加します。ファイルサイズは156MBくらい。
GitHub Desktopで「Commit to main」をクリックしたところ、やはりアップロードできないメッセージが出ました。Git Bashの出番です。
・Git Bashを起動して、下記赤いコマンドを打ちます。
cd /ローカルワークスペースの保存先
これでコマンドが指定したフォルダに反映しますする。(ここは例として/G/GitHub/testProjectを打ちました)
git lfs track “*.特定の拡張子”
これで指定した拡張子のファイルのサイズの制限が解除されます。(ここは例として.maを打ちました)
今のコマンドを実行したら、
「.gitattributes」というデータが生成されたので、まずこれだけCommit、Pushします。
次に、MAYAデータをCommit、Pushします。
(順番でアップしないとまだサイズ制限のエラーが出るらしいです)
これでリポジトリにMAYAデータがアップされました。上記の方法で他種類のファイルサイズの制限を解除していくと、色々なファイルの追加をしたり、更新したりすることができるようになります。
まとめ
今回はGitHubのインストール、ファイル更新などの操作をご紹介してみました。
バージョン管理システムはプログラムの開発など様々な業界でも使われています。
GitHub Desktopのような視覚的に操作できるGUIツールに頼らずに、コマンドだけで操作ができる人もいますが、この記事はなるべくゲームエンジン、DCCツールのワークフローでよく使う機能を洗い出して解説いたしました。少しでも参考になれば幸いです。
以上になります。ありがとうございました。