25
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

GitHubハンズオン 第1回 〜個人開発編〜

Last updated at Posted at 2023-04-08

GitHubハンズオン 第1回 〜個人開発編〜

社内のUnityクリエイター向けにGitHubの勉強会を開催しました!
せっかくなので資料を公開します!

シリーズになっているので、気になるところだけでも読んでみてください!

GitHubハンズオンシリーズ

本記事の対象

以下の方を対象としています。

  • 仕事仲間からGitHubを使うように言われたけど、GitHubを触ったことがない人
  • 黒い画面(コマンドライン)は触りたくない人

また、資料の中でまれにUnityという言葉が登場しますが、これは弊社がUnityの編集履歴を管理するためにGitHubを利用しているという背景があるためです。
Unityを知らなくてもまったく問題のない手順になっているため、ご安心ください。

GitHubアカウントを作成する

GitHubアカウントをすでに持っている場合は、このステップを飛ばしてください。

GitHubアカウントを持っていない方は、GitHubでアカウント作成をお願いします。

詳しい手順は以下をご覧ください。

https://reffect.co.jp/html/create_github_account_first_time

プランはFreeプランで大丈夫です。

ForkをPCにインストールする

https://git-fork.com/ からPCにForkをインストールしてください。

これはGitをGUIで操作するためのPCアプリケーションです。

なぜGit?

なぜGitを使うのでしょうか?

編集履歴を安全に管理したい!

まず、ファイルの編集履歴を安全に管理したいという背景があります。

たとえば、以下のように、ファイルを編集する度にコピーを残すという方法があります。

  • 大事なファイル_20230324.txt
  • 大事なファイル_20230324_2.txt
  • 大事なファイル_2023-03-27.txt
  • 大事なファイル_最終版.txt
  • 大事なファイル_最終版_segur修正版.txt

どれがどれだかわからなくなるから、ファイル名やフォルダー名で編集履歴を管理するのは止めましょう!

編集履歴は専用ソフトで管理しましょう!

一度行った編集をいつでも元に戻したい!

  • 素材を追加してみたけど、やっぱり追加前の状態に戻したい。
  • ライブラリAをインストールしてみたけど、やっぱりインストール前の状態に戻したい。

ゲームのセーブ&ロードみたいに、気軽に前の状態へ戻せれば、複雑な作業も挑戦しやすくなります!

複数人で安全に編集したい!

AさんとBさんが同時に編集した場合、それぞれが別々の編集履歴として記録されるので、どちらの作業もムダになりません!

競合箇所(作業がかぶった箇所)を見比べながら、安全に統合できます!

そのため、気軽に編集ができるようになります!

GitがシェアNo.1

ここまで挙げた目的は、他のソフトでも実現可能ですが、GitがシェアNo.1です!

個人のリポジトリを作る

リポジトリとは?

リポジトリとは、ファイルの編集履歴を管理する場のことです。

repositoryは貯蔵庫という意味の英単語です。

GitHubでリポジトリを作成する

GitHubで 右上の + > New repository をクリックします。

image1.png

リポジトリ名を記入する

リポジトリ名を記入してください。

UnityプロジェクトならPascalCaseが一般的です。(業界の慣習によります)

今回はGitPracticeと入力します。

image20.png

公開範囲を選択する

Privateを選択してください。

Publicを選択すると、全世界に公開されてしまいます!

たとえば、社内用の情報を扱う場合、必ずPrivateを選択するようにしましょう!

image32.png

作成ボタンをクリックする

Create Repositoryボタンをクリックします!

以下のようなページが表示されれば成功です!

image13.png

テキストボックスに表示されている文字列(赤線)が リポジトリURL です。メモに控えてください。

HTTPSとSSHの2種類あります。今回はSSHを利用することにします。

クローンする

クローンとは?

サーバーのリポジトリをコピーして、PCにリポジトリを作ることをクローンと呼びます。

  • サーバー側のリポジトリをリモートリポジトリ
  • PC側のリポジトリをローカルリポジトリ

と呼びます。

Forkでクローンする

左上の File > Clone をクリックします。

image45.png

さきほどメモに控えたリポジトリURLを Repository Url 欄に入力してください。

image19.png

Parent Folder 欄は、PC側の作業ディレクトリです。
お好きなフォルダーを指定してください。
ただし、日本語や半角スペースがパスに含まれていないフォルダーが安全です。

Name 欄は、デフォルトのままでOKです。(リポジトリ名と同じ)

Clone ボタンを押します。

SSH接続の設定

クローンが無事にできた場合は、このステップは飛ばしてください。

クローンできなかった場合は、こちらをクリックしてください。

はじめてクローンした場合、SSHのエラーが発生すると思います。
そのエラーを解消していきましょう!

ここが最初の山場です!

この設定は、クローンする度に実施する必要はなく、PC毎に1回実施すればOKです。

ここでは、黒い画面(コマンドライン)を使うことになります!すみません!

Macの場合はターミナルを起動してください。
Windowsの場合はコマンドプロンプトを起動してください。

以下のコマンドを実行してください。

ssh -T git@github.com

応答に You've successfully authenticated が含まれていなければ、SSHの設定ができていません。

以下の記事を参考に、公開鍵と秘密鍵を作成し、公開鍵をGitHubに登録してください。

https://qiita.com/shizuma/items/2b2f873a0034839e47ce

あらためて以下のコマンドを実行してください。

ssh -T git@github.com

応答に You've successfully authenticated が含まれていれば、SSH接続は成功です。

改めてForkでCloneをしてみてください。
今度こそ、クローンできると思います!

もし、クローンできなかった場合は、こちらをクリックしてください。

SSH接続が成功するにもかかわらず、クローンに失敗した場合、Fork側の設定に問題のある可能性があります。

File > Configure SSH Keys をクリックし、 id_rsa 以外のファイルが登録されていないか確認してください。

image35.png
image44.png

コミットする

コミットとは?

コミットというのは、編集履歴に記録するデータの単位です。

編集履歴に記録する操作もコミットと呼びます。

README.mdを作る

Fork右上の Open in > Open In File Explorer をクリックすると、作業フォルダーが開けます。

image41.png

README.md というファイルを作成します。
.mdというのは、Markdownファイルです。

image24.png

README.md をテキストエディターで開き、以下のように入力して保存します。

# GitHubハンズオン

文字コードはUTF-8で保存してください。でないとForkで文字化けします。

README.mdをStageに追加する

Forkの Local Changes をクリックすると、 UnstagedREADME.md が追加されていることがわかります。

README.md をクリックすると、変更箇所が右側に表示されます。
(もし、文字化けしていたら、 README.md をUTF-8で保存し直してください。)

image9.png

Stage ボタンをクリックすると、 Unstaged から Staged へREADME.mdが移動します。

README.mdをコミットする

image27.png

右下の Commit Message 欄に READMEを追加 と入力し、 Commit File ボタンをクリックします。

左側の Branches > main をクリックすると、 READMEを追加 という行が追加されています。

image39.png

README.mdを編集する

再び、テキストエディターで README.md を開き、以下のように内容を書き換えて保存します。

# GitHubハンズオン
これはGitHubハンズオンのファイルです。

改めて、Forkで Local Changes を確認すると、再び UnstagedREADME.md が表示されています。

右側には、前回と今回の差分が表示されています。

もし、差分が2列表示になっていない場合は、右上にある
image15.png
をクリックしてください。

image43.png

README.mdを再びコミットする

さきほどと同様に Stage ボタンを押し、コミットメッセージに READMEを更新 と入力し、コミットボタンを押します。

今度は左側のAll Commitsをクリックしてみます。

READMEを更新という行が新たに追加されていることを確認します!

image10.png

このようにコミットという単位で編集履歴を管理します!

ステージとは?

ステージというのは、コミットの候補となるファイル変更データを保管する場所です。

ここで急にmainブランチというのが、登場しますが、ブランチについては次回解説します!

プッシュする

プッシュとは?

プッシュとは、ローカルリポジトリの内容を、リモートリポジトリにコピーすることです。

プッシュする

Forkの左上のPushボタンを押します。

image16.png

以下のようなダイアログが出ます!

image11.png

Pushボタンを押すと、プッシュが始まります!

GitHubのページを確認する

プッシュが完了したら、GitHubのリポジトリのページをリロードしてください。

以下のように、 README.md の内容が表示されたら、成功です!

image12.png

さいごに

今回はここまでです!おつかれさまでした!

次回は共同開発編です!引き続きこちらも実践していただけると嬉しいです!

本記事作成にあたり、以下の記事を参考にさせていただきました。ありがとうございました!

25
35
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?