環境
この記事は以下の環境で動いています。
項目 | 値 |
---|---|
CPU | Core i5-8250U |
Windows | 10 |
unity | 2020.3(LTS) |
概要
ROS講座でUnityのプログラムが出てきます。Unityのプログラムをgitで管理する方法を記します。またサンプルProjectをgitでダウンロードして使用する方法も解説します。
Unityのgit管理
github for unityのインストール
- Asset Storeで「github for unity」をダウンロードします。
- PackageManagerで上記をImport
設定をする
- メニューバーの「Window」->「GitHub」をクリック
- 「setting」タブに移り、出てくるページの「Name」と「Email」に適当な値を入れます。この情報はcommitメッセージに入るだけで、githubの登録アドレスと違っても、実在しなくても大丈夫です。
初期化をする
- 「Initialize」タブに移り、「Initialize a git repository for this project」というボタンを押す。ここで.gitignoreなどが自動で作られて、それらのファイルのみのInitial commitが作られます。
- 「Assets」などのフォルダはまだコミットされていません。「Changes」タブに移って、一覧からcommitしたいファイル(全部チェックで大丈夫です)をチェックして、画面下部の「Commit Summary」と「Commit Description」を埋めて「commit to [master]」を押しましょう
githubと連携する
remote repositoryを作る
githubの使用するアカウントで新たにリポジトリを作ります。
sshキーの登録
どうやらPCの「/c/Users/[user名]/.ssh/」にssh鍵が必要な見たいです。今回はgitbashを使いました。
- gitbashを起動
- ディレクトリ移動:cd ~/.ssh/
- 鍵の作成: ssh-keygen.exe -t rsa(あとは指示に従って)
- ~/.ssh/id_rsa.pubをgithubに登録
リモートリポジトリの設定&ログインをする&Push
Unityに戻ります
- リモートリポジトリの設定
- メニューバーの「Window」->「GitHub」をクリック
- 出てくるウィンドウで「Setting」タブを開く
- 「Remote: origin」の欄にリポジトリのアドレスを入れる(例:git@github.com:project-srs/ros_lecture_unity_app.git)
- ログイン
- 画面右上の「Log In」を押す
- 出てくる画面で「Sign in with your blowser」を押す。
- 出てくる画面でgithubの連携のために認証をする
- pushをする
- ウィンドウ上部の「Push」を押します。
githubからcloneしたProjectを使用する
例えば当プロジェクトの「https://github.com/project-srs/ros_lecture_unity_app」を使用する場合の手順です。
リポジトリのclose
外部ツールでcloseする必要があります。今回はgitbashで~/に移動して「git clone git@github.com:project-srs/ros_lecture_unity_app.git」します。
Unity hubで開く
Unity Hubを開き「リストに追加」を押して上記のディレクトリを開きます。
コメント
- Unity Teamを使って構成管理をするのがUnityの正式のようです。
- 昔はmetaファイルが隠しファイルかそうでないかの選択があったそうですが、今はなくなっています(.metaファイルが普通のファイルとして出来ます)またバイナリ形式かテキスト形式かを選択できるのですが、現在はデフォルトがテキスト形式のようです。
- 最初のコミット時点で500kBほどでした。最初に.gitattributeが設定されているのでgit LFSに対応していているようです(未確認ですが)。