Git演習(1)
アジェンダ
Gitの紹介
Git環境のインストール
Gitでフォルダを管理してみよう
Gitでゲームデータを管理しよう
関連リンクの紹介
突然ですが...こんなこと、ありますよね
間違えて重要なファイルを消してしまった!
変なバグが出たので前に戻したい!
誰がどのように書き換えたファイルなのかわからない!
同時に他の人と同じファイルを変更してしまった!
→Gitを使えば、これらはすべて解決できる!
Gitで何が可能になる?
バージョン管理とは?
一つのファイルを日時ごとにバック
アップできる
いつでも指定したタイミングの
バックアップに戻せる
どこをどのように直したか、一目瞭
然になる
→Gitは、「バージョン管理」を行う仕組みです
本日の目標
Gitを使い、一人で作るゲームの
バージョン管理をできるようになろう
本日の演習の流れ
1ページずつ、課題に取り組んでもらいます
全員が課題を完了するまで待ってから先に進めます!
わからないことがあった人は、すぐに誰かに聞きましょう!
(もちろん、僕に聞いてもokです)
早く終わった人は、まだ終わっていない人を
積極的にサポートしましょう!
積極的にコミュニケーションしましょう
さっそく使ってみる!...前に
1. Gitでバージョン管理するフォルダ(リポジトリ)を作る
2. ファイルを追加・更新・削除する
3. 変更したファイルをリポジトリに登録(コミット)してバージョンを更新
4. 2-3を繰り返して開発を進める
バージョン管理の流れ
Gitでゲームデータを管理してみよう
演習1. Git環境をインストールしよう
Sourcetreeをインストールしよう
https://ja.atlassian.com/software/sourcetree
インストーラに従って進めよう(リモート設定はスキップ)
Gitの基礎システムが一緒にインストールされる
普通、Gitはターミナルで操作するが、
Sourcetreeを用いることで、
GUIでGitができるようになる
演習2. リポジトリを作ってみよう
Sourcetreeのメニューから
「リモートリポジトリを作成」
新しくフォルダを作り、そのフォルダを選択
設定はGitのまま
ここまでは、楽勝...?
演習3. ファイルを作ってコミットしてみよう
新しいファイルを作り、Sourcetreeでコミットをする
先ほど作ったリポジトリの中に、
テキストファイルを作ってみよう(名前は何でもok)
Sourcetreeに戻ると、ツリーに先ほど作ったファイルが追加
されているはずなので、コミットしてみよう
コミットメッセージは「Initial Commit」にしよう
(空欄はNG)
演習4. ファイルを編集してコミットしてみよう
ファイルに昨日食べたものを書き込み、
再びコミットする
コミット時に何が変更されたか一目でわかるはず
コミットメッセージは「Add yesterday's meal」にする
(基本的に英語で書くが、慣れない間は日本語で書いても可)
演習5. ファイルを削除してコミットしてみよう
実は昨日食べたものをメモする必要がなかったので、
ファイルを消してコミットしたい
コミット時に何が削除されたか一目でわかるはず
コミットメッセージは...自分で考えて書こう
(後から見返したときに、
何をしたかがわかるように書くこと!)
演習6. 前のバージョンに戻そう
昨日食べたものが書き留めたいほど美味しかったので、
ファイルを消す前のバージョンに戻したい
サイドメニューのブランチ→masterをクリック
バージョンの一覧が表示されるので、
戻したいバージョンをダブルクリック→OK(チェックアウト)
前のバージョンに戻ったので、上部メニューの
ブランチ→新規作成で 「mealRestore」と名付けてブランチを作成
これにより、ファイルを削除したバージョンから
枝分かれ(ブランチ)した状態になる
疲れてきた...?
ゲームデータをオンラインで管理しよう
演習7. 既存のUnityプロジェクトをGit管理しよう
好きなUnityプロジェクトでOK!
Unityプロジェクトのフォルダを選択し、リポジトリを作る
空のフォルダでないといわれるが、
構わずOKするとリポジトリができる
演習8. Git管理しないファイルを設定しよう
Unityにはバージョン管理する必要のないファイルが
大量に含まれているので、除外したい
設定→詳細へと進み、.gitignoreファイルを編集する
https://github.com/github/gitignore/blob/master/Unity.gitign
ore
の内容をコピペしよう
演習9. 最初のコミットをしてみよう
すでに編集済みのファイルをバージョン管理したい
以前の演習と同様にコミットする
コミットには慣れてきた...?
演習10. オンラインでのGit環境を整える
自分のPCが壊れた時に備えて、
せっかく作ったゲームをオンラインに上げておきたい
Githubはオンラインで路地取りを管理するサービス
まずGithubアカウントを作る(https://github.com)
アカウントを認証できたら、
Repositories → NewでGithubにもリポジトリを作る
(リポジトリ名はアップロードしたいリポジトリ名と同じに)
演習11. Githubにリポジトリをプッシュしよう
オンラインで管理するために、
データをアップロード(プッシュ)
先ほど作ったリポジトリのurlをコピーしておく
Sourcetreeに戻り、設定→リモート→追加で
リポジトリのurlを登録(デフォルトリモートとして)
登録したら、上部メニューのプッシュで
リポジトリのデータをアップロードする
Githubに戻り、アップロードされていることを確認
演習11. Githubにリポジトリをプッシュしよう
オンラインで管理するために、
データをアップロード(プッシュ)
先ほど作ったリポジトリのurlをコピーしておく
Sourcetreeに戻り、設定→リモート→追加で
リポジトリのurlを登録(デフォルトリモートとして)
登録したら、上部メニューのプッシュで
リポジトリのデータをアップロードする
Githubに戻り、アップロードされていることを確認
お疲れさまでした
用語のまとめ
リポジトリ:
コミット:
ブランチ:
プッシュ:
用語のまとめ
リポジトリ: Git管理するフォルダ
コミット: ファイルをリポジトリに登録すること
ブランチ: バージョンの枝分かれ
プッシュ: オンライン(リモート)のリポジトリに
ローカルのバージョンをアップロード
コラム)Githubを使う目的
複数人での開発のため
強いエンジニアの質の高いコードを見るため
企業の人に自分のコードを見せる/見られるため
IT系の会社のESでは殆どの場合アカウントを書かせられる
Contributionを充実させよう
sonoをフォローするため
sono8streamで検索!
参考リンク
サルでもわかるGit入門
https://backlog.com/ja/git-tutorial/
初心者のためのGitとSourceTree 〜サルでもわかるGit入門を試してみた〜
https://qiita.com/Simayichutatsu/items/cfaab4cbd340455aa255
3分でわかる!Unityで作成したゲームをGitでバージョン管理する方法
https://freesworder.net/unity-git/
Github for Unity
https://unity.github.com

Git演習(1)