Unityに限らずプログラムなどはGit/Githubを利用して管理を行います。
必要なものの確認
作業に取り掛かる前に、今回のプロジェクト管理を行うために必要なものの知識などを身に着けてから取り掛かることにいたしましょう。
用語の確認
まずはこのあと登場する主な用語などを確認しておきましょう。gitとgithubを混ぜて認識すると説明聞いてて訳わからなくなるので違いを把握しておいて下さい。
用語 | 説明 |
---|---|
git/Git | バージョン管理システムの名前 |
github/Github | gitで管理できるWebサービス名 類似サービス:GitLab |
SourceTree | gitをGUI(ボタンとか)で操作することができるツール |
ターミナル/コンソール | 黒い画面に文字を打ち込んで命令を出すやつ CUIといったりもする Macだと白色だけどものとしては同じ |
SSHキー | パブリックとプライベートなものがある。 自分のアカウントを証明するもの プライベートなものは公開しないので取り扱い注意 |
流れの確認
Unityのプロジェクトを管理するまでの流れとして以下の手順で行います。多少前後しても大丈夫な部分はありますが、わからない場合は一緒にやっていきましょう。このあと一個ずつやってくので、頭にいれるだけで良いです。上から順番にやっていきます。
やること | 目的 |
---|---|
Githubアカウント作成 | Githubを利用するために必要 過去に30分ぐらい確認メールが届かなかった事あるので先にやる |
SourceTreeのインストール | Gitを使えるためにあれこれインストールしてくれるので導入 プロジェクト管理時もログなどが確認しやすいため重宝します |
SSHキーの作成と登録 | SSHキーは必須ではないのですが、管理するファイルの量が大きくなった場合に HTTPS(SSHじゃない方)だと送れなくなることがある。 あと、開発現場だとみんなこっち使ってる(事が多い) |
Unityのプロジェクト管理 | これが目的の主題 |
なぜGithub for Unityを使わないのですか?
Unityのアセットに「Github for Unity」という導入するだけなら簡単に使うことができるツールがありますが今回は利用しません。理由としては、gitのログが見づらいのと、コンソールなどが必要になった場合の対処が少ししづらいからです。また、ファイルによってLFS(Large File Storage)というものを利用しており、管理するファイルサイズによっては課金が発生します。
業務で使う場合や、GitやLFSに関しての知識がある状態であれば使いこなすことができると思いますが、ここでは無料で管理できることを前提にお話を進めるため、Github for Unityは使わないまま管理を行います。
Githubアカウントの作成
GithubはWebサービスです。Githubサイト上で自身のアカウントを作成して下さい。
アカウント登録
Githubのサイトに移動して、「サインアップ」もしくは「Githubに登録する」からアカウント作成を行って下さい。時期によってデザインは変わりますが、下記のような場合だと「Email address」に登録用のメールアドレスを入力して「Sign up for Github」からアカウント作成を行うこともできます。
アカウント名の入力
Githubではアカウント名がそのままリポジトリと呼ばれる名前に含まれます。メールアドレスとは別で利用するIDになるので、わかりやすいものにして下さい。
質問などはひとまずスキップでOK
アカウント作成に必要な入力が終わると、いろいろとGithub側から質問されます。この時点では飛ばしても問題ありませんので、必要に応じてスキップを行って下さい。
メールから認証
登録に利用したメールアドレスにGithubからメールが届いています。その中にVerifyやConfirmなどのリンクがあると思います。そのリンクにアクセスすることで認証が完了します。
自身のプロフィール画面に移動
アカウントが作成できたら自分のプロフィール画面に移動してみましょう。Githubページの右上のアイコンをクリックして「Your profile」から移動ができます。リンクだと「https://github.com/{アカウント名}」という感じになります。
ご自身のページが準備できたらアカウント作成はOKです。このページを起点に操作しますので、ブックマークなどしておくとおすすめです。
SourceTreeのインストール
インストーラーのダウンロード
「sourcetree」で検索もしくはhttps://www.sourcetreeapp.comにアクセスして下さい。
開いたページでは「Download for Windows」のボタンか右上の「Download free」からインストーラーを手に入れることができます。
インストーラーの手順
インストール後、Bitbucket関係のログインを促されますが、ここはスキップで構いません
GitとMercurialのチェックを入れて次へ。Mercurialはなくてもいいですが、一応入れておきましょう。
User名とAuthor Email Addressを入力して下さい。これはあとでも変更できます。入れる内容としてはコミットなどを行ったときに表示されるデフォルトの名前が入るので、Githubのアカウントと同じようなユーザー名と同じメールアドレスを入れておくと良いです。私の場合は@マーク後に作業PCの名前を入れてどのPCで作業したかがわかりやすいようにしています。
こちらはいいえ。このあとSSHキーを別途作成します。
Githubなんかのアカウントも行うことができますが、ここではスキップして頂いて大丈夫です。
SSHキーの作成とGithubへの登録・SourceTreeへの設定
SSHキーを作るときに使うコマンド一覧
確認系はいらないのもありますが、CUIは不安になるのでいつでも確認できるようにしておくと安心できます。
コマンド | 説明など |
---|---|
cd | チェンジディレクトリ フォルダの階層を移動する |
mkdir | メイクディレクトリ フォルダを作成します |
pwd | 今いるディレクトリの場所を知る 必須じゃないけど不安なので |
ls | 現在いるディレクトリの内容を表示する -a オプションを入れると隠しファイルとかも見ることができる |
touch | ファイルを作る。空っぽのファイルが作れる |
vi | これは必要に応じて。 ターミナルでファイル編集したい場合はviとかで |
chmod | チェンジモードの略のはず ファイルのアクセス権限を書き換える場合はこれ。 なくてもなんとかなることもあるので権限で怒ってたらこれ chmod 600 ファイル名 |
ssh-keygen | キーを作るコマンド オプションとかが必要なのでこれだけじゃだめ ssh-keygen -t rsa -C ‘メールアドレス’ |
clip | 公開鍵を貼り付けるときにコマンドで華麗に済ませたい場合はこれ。 無理せずにテキストを開いてコピーしても大丈夫 |
ssh | sshキーを使ってGithubにアクセスする ssh -T git@github.comとかでアクセスするのがよくあるパターン |
コマンドとはちょっと違うけど、さっきと同じ入力をしたい場合、上キーを押すと履歴を遡ることができます。一文字間違えたときなどは上キーを使って必要な部分だけ修正しましょう。
ターミナルからSSHキーを作る
基本的にはWindowsでの環境を想定して書きます。やること自体はMacも同じです。
SourceTreeの操作>ターミナルで開くからターミナルを立ち上げます。
このときターミナルの現在位置はホームディレクトリになります。ホームディレクトリとはPCにログインしているユーザーの起点になる場所のことです。例えばwatanというユーザーでログインしている場合pwdコマンドを使うとCドライブ直下のUsersフォルダ内のユーザー名フォルダになります。
もしホームディレクトリ以外にいる場合は下記コマンドでホームディレクトリに移動できます
cd ~
ホームディレクトリにいるのを確認できたら「.ssh」フォルダを作成します。どっとえすえすえいちフォルダね。ドットが付いているのをお忘れなく。
mkdir .ssh
隠しフォルダをフォルダーで見えるように設定していると、ホームディレクトリをフォルダ表示すると.sshフォルダが見えるはずです。
フォルダが作れたらそのフォルダ内に移動します
cd .ssh
.sshフォルダ内に移動したあとに行って下さい。下記コマンドを打ち込んだあとにEnterキーを3回打ち込みます。メールアドレスの部分にはgithubなどで利用したメールアドレスを入力して下さい。
ssh-keygen -t rsa -C 'メールアドレス'
#keyを作成する意思確認[Enter]
#パスフレーズ入力[(何も入力せず)Enter]
#パスフレーズ再入力[(何も入力せず)Enter]
パスフレーズについて
パスフレーズはセキュリティ面を考えると入れたほうがいいですが、今回はスキップします。公開範囲などが広がり、必要に応じてSSHキーを再度作成してください。
うまくできている場合はこの時点でキーが作られています。lsコマンドで確認してみましょう。下記2つのファイルができていれば成功です。
- id_rsa
- id_rsa.pub
もしできていない場合はSTEP3からやり直して下さい。
作ったSSHキー(公開鍵)をGithubに登録
鍵を作れたら、まずはGithubに鍵の所有者ということを伝えに行きましょう。
コマンドでファイルの内容をコピーします。.sshフォルダ内にいる状態で以下のコマンドを実行。
# Windowsの場合
clip < id_rsa.pub
# Mac
pbcopy < id_rsa.pub
打ち込んでみて「bash : なんとかかんとか No such file or directory」みたいなテキストが表示されると失敗しています。以下の点が間違えていないかなどを確認してみて下さい。
注意!ここからCtrl +C (コピー)禁止
clipコマンドではファイル内のテキストをクリップボードに貼り付けた状態になっています。いわゆるコピー状態。このあとの作業でGithub内にSSHキーを登録するときまで他のコピー内容を上書きしないようにして下さい。
もしコピーをしてしまった場合はここまで戻ってもう一度clipコマンドで公開鍵をコピーしよう
続いてGithubの右上からSettingsページに移動します。
Settingsページの左側タブから「SSH and GPG keysを選択」。ここには登録済みのSSHキーなどが一覧で表示されます。初めて登録する場合はなにもないはずです。右上の「New SSH key」ボタンを押して下さい。
新しいSSHキーの登録ページではタイトルと鍵自体の入力を行います。
Title タイトル | 自由に入力できます。どの鍵か後で分かるようにしておくとgood。 私の場合はOSや用途とどのマシンで使っている鍵かなどがわかるようにしてます |
Key | こちらは選択して貼り付けを行って下さい。下図の1行目は私が書いたものですが不要なので、貼り付けたままのものにして下さい。 sshから始まって、最後の方はユーザー名や見覚えのあるマシン名が記載されていると思います |
タイトルとキーの入力ができたら「Add SSH key」ボタンを押して登録して下さい。
登録がうまくできない場合は正しくsshキーが作成もしくは公開鍵の貼り付けができていない可能性があります。
この時点ではsshキーの再作成から行うことが可能です。登録が受理されるとSSHキーが正しく作られた確認にもなりますので落ち着いてクリアしましょう!
sshキーの再作成を行う場合は.sshフォルダ内を空にしてから行いましょう。隠しフォルダを表示状態にすればフォルダからid_rsaファイルなどを消すことができますよ。(なかったら・・・普通に作り直しましょう)
Githubに登録したsshキーを開通させる
Githubにキーが登録できたら、PCから鍵を使ってGithubにアクセスが可能かどうかのチェックを行います。
.sshフォルダにconfigというファイルを作成します。よくわかんない場合はターミナルで以下のコマンドを一つずつ入力してみて下さい。
cd ~
cd .ssh
touch config
c:Users/(ユーザー名)/.sshフォルダ内にconfigというファイルができています。このファイルをメモ帳やテキストエディタで開き、以下のテキストを貼り付けて下さい。編集が終わったら保存をして閉じます。
Host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa
User git
configファイルが準備できたら以下のコマンドを打ち込んで見て下さい。
ssh -T git@github.com
途中yes/noを聞かれたらyesと入力してEnter。その後に次のようなメッセージが表示されたらsshキーとGithubの接続が見事成功となります。
Hi (Githubアカウント名)! You've successfully authenticated, but GitHub does not provide shell access.
SSHキーをSourceTreeに登録する
SourceTreeのツール>オプションからウインドを開きます。
全般メニュータブを選択し、SSHクライアント設定をPutty/Plink > OpenSSHに変更。変更するとSSH キーの項目に先程作ったid_rsaファイルのパスが指定されるはずです。
以上でGithubを使ってプロジェクトを管理する準備が整いました。
コメント
コメント一覧 (1件)
[…] UnityのプロジェクトをGithubで管理withSourceTree【準備編】 Unityに限らずプログラムなどはGit/Githubを利用して管理を行います。 […]