はじめに
GitHubの価格が改定され、無料で非公開リポジトリが作れるようになりました。
Gitを使うとこんなことができます。
- アセット入れたらおかしくなった! -> 戻せます。(簡単)
- 昨日まで動いてたのに... -> 戻せます。(簡単)
- 突然PCが壊れた!! -> 戻せます。(GitHubから別のPCに)(そこそこ簡単)
- WinとMacで作業したい -> できます。(ちょっと難しい)
- 複数人で共同開発したい -> できます。(ちょっと難しい)
もしフォルダをコピーしてバックアップしているのなら、Gitを覚えると全く違った体験が待っています。
一人でバックアップ代わり使う分にはそんなに難しくないので多くの人にぜひ使ってほしいと思います。
この記事ではUnityプロジェクトを作ってからGitの初期設定を行い、GitHubにアップロード(プッシュ)するところまでを画像付きで紹介します。
今日紹介する方法はあくまで一例ですが、ある程度の参考になれば幸いです。
環境
以下を想定しています。Windowsでも同じ感じでいけるはず。
- Mac OS X
- Unity 2018.3.0f2(Unityバージョンはなんでもいいです)
- GitはコマンドラインではなくSourceTreeを使用
- SourceTree 3.0.1
Git管理を始める手順
では早速やってみましょう。
ローカルにプロジェクトを作る
練習用にプロジェクトを作ります。
- Unityで新規プロジェクトを作ります。
- できました
- 今日はGitの練習なのでもうUnityは閉じて大丈夫です。
- Finder(Windowsの場合はエクスプローラ)をみてみると、下記のようなフォルダ構成ができています。
このプロジェクトをGitで管理できるようにし、GitHubへもアップロードします。
プロジェクトフォルダをローカルリポジトリにする
SourceTreeをお持ちでない場合は入れておいてください。
Gitを使うためのGUIツールは他にもForkやGitKrackenとか色々ありますが、一番使われてそうな気がするSourceTreeで説明します。
SourceTreeを起動する
新規 -> ローカルリポジトリを作成
- プロジェクトフォルダを指定します。
- リモートリポジトリは作成しない。でOK。
- 一覧に追加されました。
- 大きな数字(ここでは1870)が出てますがとりあえず無視してください。
- 一覧からリポジトリ名をクリックすると詳細画面が開きます。
- 以後この画面を操作します。
GitHubにリモートリポジトリを作成する
GitHubのアカウントをお持ちでない場合は作成しておいてください。
- ブラウザでGitHubにログインし、右上の
+
からNew repository
を選びます。 - リポジトリ名などを入力して作成します。
- この時、
.gitignore
のところでUnity
を選択するようにしましょう。
- この時、
- 作成に成功すると、
https://github.com/[ユーザー名]/[プロジェクト名]
のようなURLで下記ページが表示されます。- 作成時のオプションを選択していれば、すでに
.gitignore
というファイルが存在しているはずです。
- 作成時のオプションを選択していれば、すでに
- この画面にある
Clone or Download
というボタンから、https://
で始まるURLをコピーします。- コピーした文字列は次の手順で使います。
ローカルリポジトリとリモートリポジトリを接続する
先ほど作ったローカルリポジトリに、リモートリポジトリはここだよ。と教えてあげる設定をします。
- SourceTreeに戻ります。
- 右上にある設定を開き、リモートタブを選択します。
- リモートタブの
追加
を開き、先ほどコピーしたURLを入力します。- リモートの名前は
origin
としましょう。(これは何でもいいのですが慣習的にoriginを使う場合が多いです)
- リモートの名前は
- リモートタブに追加されたことを確認します。
リモートリポジトリをダウンロード(クローン)して、 .gitignore
ファイルをローカルに作る
.gitignore
というファイルは、 どのファイルをgitから無視するか。
という設定ファイルです。
GitHubではリポジトリ作成時に選ぶだけで、Unity用の一般的な設定ファイルを作ってくれます。
このファイルはまだリモートリポジトリにしか存在しないので、ローカルに取り込みます。
- 引き続きSourceTreeで操作します。
- メニューにある
プル
を押します。 - ダイアログが出てくるので、 プルするリモートのブランチで
master
を選択します。- 選択肢に出てこない場合は
更新
を押すと出てくると思います。 - OKを押して閉じる。
- 選択肢に出てこない場合は
プルしています〜
と表示されたのち、うまくいけばダイアログが閉じてリポジトリ詳細画面に戻ります。- ここまでうまくいっていれば、先ほど出ていた数字がかなり減っているかと思います。
- (
.gitignore
というファイルが作られ、管理しなくて良いフォルダ(LibraryとかTemp等)が管理対象外となったため数字が減りました)
- (
コミットしよう
ここからやっとプロジェクトファイルをコミットしていきます。
- 対象ファイルを選択 -> メッセージをいれて -> コミット
- まっさらになって数字も消えました。コミット完了。
- ちゃんと履歴としては存在しています。
プッシュしよう
- SourceTreeで履歴画面をみると、
origin/master
から上方向にmaster
が伸びていますorigin/master
はGitHubの状態master
はローカルの状態- これは
origin/master
に対して、master
の方が1コミット進んだ状態を表しています。
- この状態だと、進んだ分をGitHubにアップロード(プッシュ)することができます。
- (もし
origin/master
とmaster
が枝分かれしてるような形の場合はプッシュできません)
- (もし
プッシュ
を選択 ->master
にチェックを入れ ->OK
- 成功すれば
origin/master
とmaster
が横並びになります。 - GitHubをリロードするとファイルが入っています。
準備完了
おつかれさまでした。
これでUnityのプロジェクトファイル一式をGit管理下におき、さらにGitHubへプッシュ(アップロード)することができました。
私はこの手順を、Unityプロジェクトを作ったら毎回行なっています。
これ以降は、キリのいいタイミング(1つの機能が完成したとか、1日の終わりに、とかいつでもいいです)でコミット&プッシュをしていくだけです。
こうしておくと、何かあってもGitの機能で古い時点のファイルに戻せますし、GitHubにアップロードしてあるので突然PCが壊れてもプロジェクトは守られます。
機能追加する前にコミットする癖をつければ、何かあっても必ずそこまでは戻せるので心理的な安心感が違います。
今回はGitの使い方詳細については触れませんでしたので、書籍やネットの記事を参考にしてください。
わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉
- 作者: 湊川あい,DQNEO
- 出版社/メーカー: シーアンドアール研究所
- 発売日: 2017/04/21
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
ぜひGitを使いこなして快適なUnityライフをお過ごしください〜。