あるみにメモ

技術的なメモをかくかもしれない

UnityプロジェクトをGitで管理したい

いい加減にためてるかいておきたいことを消費していきたいので、ちょっとずつ更新しておきたいん

UnityプロジェクトをGitで管理したい

Unityのチームプロジェクトを始めようとして、GitとSourceTreeを用いたリポジトリの作成うんぬんに毎回手間取ったりするので、備忘録的に残す。

多分個人用のプロジェクト管理にも有用だと思う

説明足らず&画像なしはいずれ解消する。

解釈違いがあるかも、間違ってたら通りすがりの人、教えて!!!!!

用意する環境

  • Unity
  • GItHub(GItlab)
  • SourceTree

順番とかは色々あるだろうけど自分のペースでやる

1. GitHubリポジトリを作成する

ReadMeを追加する設定にして、

Unity用のgitignoreファイルも追加する。

f:id:aluminum_pepe:20180511194302p:plain

GitHubにはもともとこの辺がリポジトリ作成の時に設定できるのでいいね

ここで作られたのはいわゆるリモートリポジトリ。

自分の作業を反映して保存したり、他の人が上げた変更を引っ張ってきたりする。

Githubを使ってない等で無視ファイルを追加するとき

自分もGitLabを使っているので、無視ファイルは検索してGItHubに上がってるものを手動で持ってくる。

「Unity gitignore」とかで検索すれば多分でる、GitHubに上がってる「Unity.gitignore」をダウンロードしておく。

f:id:aluminum_pepe:20180511193353p:plain

2. SourceTree設定

さっき作ったgitのページで、URLのようなものがコピーできるはずなので、それをコピーしておく。

f:id:aluminum_pepe:20180512002303p:plain

SourceTreeを立ち上げて、クローン画面を選択する。

クローン画面でURLをペーストしする。

f:id:aluminum_pepe:20180511193740p:plain

ファイル参照で新しいファイルをつくる。

f:id:aluminum_pepe:20180511193823p:plain

自分が作業した内容を直接保存しておくのはこの部分。ここへの変更の保存は「コミット」。

リモートリポジトリには「プッシュ」して反映、「プル」して変更をもらってくる。

3.(0.) プロジェクトファイル作成

リポジトリ作る前にファイルをもう作ってたりするかもしれないので(0.)とつけてみた。

Unityを起動し、NewProjectを選択して新たなProjectファイルを作成する。

作成する位置を、さっき2. でつくったファイルの中にする。

(もう作ってる場合は、プロジェクトファイルの位置を2. で作ったファイルの中に移動させる)

4. GItLabとかで無視ファイルをあとから追加するパターン

  1. の※の続き。

2.で作成し、プロジェクトファイルも置かれているファイルの中に、gitignoreファイルもおく。

さっきの工程で、Unity.gitignoreをダウンロードしてあるはずなので、それを持ってくる。

f:id:aluminum_pepe:20180511190724p:plain

その後、「Unity.gitignore」を、「.gitignore」にリネームする。

これがなかなか曲者で、普通にファイル選択画面では拡張子だけのリネームはさせてくれない。

そこで、コマンドプロンプトからリネーム作業をする。

ファイル選択画面から、上のテキストボックスに「cmd」と入力し、Enterを押せばコマンドプロンプトが開く。

既にディレクトリがリネームしたいファイルのある位置になっているはずなので

を実行すればリネームは完了する。

f:id:aluminum_pepe:20180511193516p:plain

黒い画面(コマンドプロンプトはこんな感じ)

f:id:aluminum_pepe:20180512002704p:plain

gitignoreファイルのリネームができた。

5. コミットする

新しいプロジェクトを保存し、プロジェクトファイルや、無視ファイルがはいったということを、ローカルリポジトリに保存させる。

SourceTreeに戻って、コミット画面を選択。

インデックスをすべて追加して、コミット!

コミットメッセージは「プロジェクトファイルの追加」とかがいいかな

あとはSourceTreeでプッシュ操作を行えば、リモートリポジトリにローカルリポジトリの変更が反映される。