SourceTreeを使ってUnityプロジェクトをGitHubにプッシュする方法

どうもこんにちは、ちはるです。

タイトル通り、SourceTreeを使ったUnityとGitHubの連携方法を忘備録として残しておきます。

今回はMacで連携を行う場合の操作になりますが、Windowsで行う場合も恐らく操作方法は変わらないと思います。

 

 

0.準備するもの

  • Unity
  • SourceTree
  • GitHubアカウント

 

1.プロジェクトの作成

プロジェクトを作成します。

プロジェクトを作成すると、PC内に次のようなディレクトリとファイルが出来上がります。

作成したプロジェクト

作成したプロジェクト

例示したディレクトリ内にはVisualStudioのデータ(紫色のやつ)がありますが、今は無視してください。

ソースコードをVSで書いたりなんだったりしていなければ、このデータは存在しません。

またプロジェクトの作業状況でディレクトリ内の構成も若干変わってくると思いますが、だいたいこんな感じの構成になっているはずです。

 

2.SourceTreeでローカルリポジトリ管理

続いて、1.で作成したプロジェクトをSourceTreeでローカルリポジトリとして管理できるようにします。

ダウンロードしてきたSourceTreeを立ち上げると、以下のような画面が立ち上がります。

SourceTree

この画面から

新規作成>ローカルリポジトリを作成

を選択します。

すると、「ローカルリポジトリを作成」という画面が出てくるので、次のように入力してください。

保存先パス:1.で作成したプロジェクトディレクトリのパス

名前:プロジェクト名

タイプ:Git

リモートリポジトリも作成する:チェックしない

ローカルレポジトリ作成画面

ローカルリポジトリ作成画面

「作成」ボタンを押下すると、次のようにローカルリポジトリが作成されます。

f:id:chiharu_free:20190504194525p:plain

 

3.GitHubでリモートリポジトリ作成

GitHubにリモートリポジトリを作成します。

GitHubにログイン後、画面右上の「+」から「New repository」を選択します。

するとリポジトリ作成画面に遷移するので、以下のように入力・選択してください。

Repository name:プロジェクト名

Add .gitignore:Unity

なお、リポジトリの公開範囲を「Public」または「Private」から選択できます。

リポジトリの用途に合わせて選択してください。

リモートリポジトリ作成画面

「Create repository」ボタンを押下すると、以下のような画面が表示されます。

これでリモートリポジトリの作成完了です。

リモートリポジトリ画面
 

4.ローカルリポジトリとリモートリポジトリの連携

ローカルリポジトリとリモートリポジトリを連携させます。

現段階では、まだPC内のローカルリポジトリとGitHub上のリモートリポジトリが紐付いていないため、あくまで別個のリポジトリとして存在している状態です。

ですので、ローカルリポジトリにリモートリポジトリの場所を認識させ、PCで作業した内容をリモートリポジトリ上に反映できるようにしていきます。

ローカルからリモートに接続

3.の最後で登場したGitHub画面中に、緑色の「Clone or download」ボタンがあります。

そのボタンを押下するとURLが表示されるので、これをコピーします。

つづいて、SourceTreeから2.で作成したローカルリポジトリを開きます。

f:id:chiharu_free:20190504212711p:plain

するとこのような画面が表示されるので、右上の「設定」を開き、「リモート」のタブを開きます。

タブを開いたら、上でコピーしたURLを登録します。

f:id:chiharu_free:20190504213204p:plain

「OK」ボタンを押下して、GitHub上のリモートリポジトリを追加完了です。

リモートリポジトリ上の 「.gitignore」ファイルをクローンする

GitHubにリモートリポジトリを作成した際、「.gitignore」というファイルが既に出来上がっていたと思います。

このファイルをローカルリポジトリにクローン*1します。

引き続きSourceTreeを操作して、ローカルリポジトリ画面の上部にある「プル」ボタンを押下します。

するとダイアログが表示されるので、以下のように設定します。

プルダイアログ

「プルするリモートのブランチ」の選択肢に「master」がない場合、「更新」してみてください。

「OK」ボタンを押下すると、問題なければ「.gitignore」ファイルのクローンが完了します。

差分数

ちなみにこの時、リポジトリ画面の左側に表示されていたこの数字が変化したと思います。

この変化は「.gitignore」ファイルの働きによるものなので、特に問題はありません。

ローカルリポジトリのデータをコミットする

ここからは結果にコミットするお時間です。

ということで、現状ではローカルリポジトリ上にしか存在しないプロジェクトデータを、リモートリポジトリにコミット*2していきます。

コミット対象のファイル

先ほどと同じファイルステータス画面にて、コミット対象のファイルを選択します。

そしてコミットメッセージを入力後、「コミット」ボタンを押下します。

コミット画面

すると、ファイルステータス画面に今まで表示されていたファイル一覧から、コミット対象として選んだファイルが消えていると思います。

ファイル全てを選択していた場合、何も表示されていない状態となります。

この状態で、画面上部の「プッシュ」ボタンを押下します。

プッシュ画面

するとこのようなダイアログが表示されるので、プッシュ対象を選択し、「OK」ボタンを押下します。

これで、結果にコミット完了です。

ブラウザでGitHubを開き、リモートリポジトリの状態を確認してみましょう。

コミット後のGitHub画面

先ほどコミットする際に入力したコミットコメントと共に、ファイルデータが表示されていると思います。

これにてUnityとGitHubの連携完了です。

以降、ソースを書いたりしてプロジェクトの内容に変更があった場合、その都度(1機能実装した、プロジェクトのスケジュール毎、気分、etc...)SourceTreeからデータをコミットすることで、GitHub上に最新版データを保存しつつ、必要に応じて過去バージョンのデータを引っ張ってきたりできるようになります。

 


以上、UnityとGitHubの連携でした。

今回はMac上で作成したプロジェクトをGitHubにコミットするという内容でしたが、元気があればGitHub上のデータをPCにクローン・チェックアウトする手順忘備録なんかも書こうかなと思っていたりいなかったり。

駆け足な部分も多々ある記事でしたが、皆さんの作業の参考にして頂けたら幸いです。

ではでは、今回はこの辺で。

ありがとうございました。

 

追記
クローンする方法を書きました↓↓↓

 

 

*1:簡単に言えばダウンロードのこと

*2:簡単に言えばアップロードのこと