0
0

【サポーターズ主催】GitとGitHubの勉強会まとめ

Posted at

はじめに

こんにちは、OhaGiです。
サポーターズ主催のこちらの勉強会に参加しました。
Git、GitHubは以前から使用していましたが今回改めて体系的に学べたのでその内容をまとめてみます。

Gitとは

オープンソースの 分散型バージョン管理システム の一種。

バージョン管理 とは
ファイルを誰が・いつ・どんな変更をしたか、変更履歴を記録すること。
変更差分の確認やファイルの復元等が行える。

分散型 とは
ユーザーのPCにローカルリポジトリを作成してそれにファイル変更履歴を記録する方法のこと。
必要に応じてリモートリポジトリに反映させることが可能。
サーバに接続出来ない場面でも開発が出来る上、複数人数での開発に向いている。
リモートリポジトリ

GitHubとは

GitをWebサービスとして提供している ソフトウェア開発のプラットフォーム
前述のバージョン管理機能や、コードレビュー機能、issuesを使ったタスク管理機能など、多くの機能を持つ。
ユーザー数1億人越えの超人気サイトであり、学生のチーム開発から大手企業まで幅広いシーンで使用されている。

GitHubを用いた開発の流れ

1.リモートリポジトリを作る

GitHubから New → リポジトリ名の入力と公開設定、Readmeファイルを追加するかを選択→ Create repository
リモートリポジトリ作成

2.ローカルリポジトリを作る(clone)

clone | 作成したリモートリポジトリをローカルにコピーすること。

エクスプローラー等で作業ファイルを作成 → ターミナル上で

cd cloneしたいファイルへのパス

を入力。
GitHubで作成したリポジトリのページから <>code タブ →緑色の <>code ボタンからキーをコピー
clone.png
ターミナル上で

git clone コピーしたキー

を入力。

cloneしたローカルリポジトリに移動しておく。

cd ディレクトリのパス

3.issue作成

issue | メンバー間での確認事項などスレッド形式で共有出来る機能。進捗状況の管理などが可能。

GitHubのページから Issues タブ →緑色の New issue ボタン → タイトルを入力してSubmit new issue でissueを作成
issues.png

4.branch作成

branch | 履歴を枝分かれさせたもの。
branchの元のコピーをそのまま取ってそこで作業が出来る。
issueを立てたときに作ることが多い。

GitHub上のIssuesタブからCreate branchボタンを押してブランチ名を入力して作成。
createBranch.png

5.fetch

fetch | リモートリポジトリから最新の状態を取得する操作。ただし、まだローカルのブランチには反映されていない。

ターミナル上で

git fetch origin

を実行。

6.branchを移動

ローカルではまだ作成したbranchに移動できていないため チェックアウト (移動)する必要がある。
git branch -r:リモートリポジトリのブランチを一覧表示する。
git branch:ローカルリポジトリのブランチを一覧表示する。

git checkout ブランチ名

でブランチを移動。

7.コードを記述

コードをひたすら書く

8.ステージング

ステージング | commitするファイルを選択すること。

ターミナル上で

git add ステージングするファイル名

を実行。

9.commit

commit | 変更内容をローカルリポジトリに記録すること。
GitHubでは、コミットしたタイミングに変更を戻すことが出来る。ゲームのセーブ機能をイメージすると分かりやすいかも。

ターミナル上で

git commit -m コミットのメッセージ

を実行。
-mはコミットのメッセージを追加するオプション。

10.push

push | fetchに加えて、リモートからの変更をローカルに反映する操作のこと。

ターミナル上で

git push

を実行。

11.pullrequest

pullrequest | レビューやmergeを行うためのリクエストを送る機能。

GitHub上でNew pull requestボタン
image
プルリクエストのタイトル、レビュワー等を入力して作成。
pullRequest2

12.レビュー

チーム開発などの場合、GitHubのコード比較機能を使用してレビューを行う。

13.merge

merge | 変更内容を統合すること。リモートリポジトリ上のブランチからメインのブランチに反映させることが多い。

merge

GitHub上でMerge pull requestボタン → Confirm mergeボタンをクリック。

14.pull

pull | リモートリポジトリの変更内容をローカルリポジトリに反映させること。
fetchとmergeをするイメージ。

git checkout ブランチ名

でpullするブランチにチェックアウトしてから

git pull

を実行。
これで、ローカルリポジトリが最新状態に更新される。

最後に

以上が今回の勉強会のまとめです。前回のチーム開発ではIssueを活用しなかったため、今回それについて学べたことが特に大きな収穫でした。

0
0
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
0
0