GitとGitHubに関して簡単にまとめていきます。
随時加筆予定。
用語説明
Git
バージョン管理システム。
(コンピュータ上で作成および編集されるファイルの変更履歴を管理するためのシステム)
GitHub
GitをベースにしたWebサービス。
コードレビューしたり、議論をしたり、並行的に異なる開発をしてマージする一連の流れを簡単に行うことができる。
(マージ・・・結合、統合、合体)
リポジトリ
ソースコードを格納する入れ物。
チームでソースコードを管理する為には、GitHubリポジトリを作成する。
GitHubリポジトリの作成
※まずはGitHubアカウントを作成してください。
①GitHubページのヘッダーより「New repository」を選択。
②リポジトリ名 (+リポジトリ説明文)を入力。
③Createボタンを押す。
Git, GitHubで管理したいディレクトリの設定 (Macの場合)
※ローカル環境にGitをインストールし、初期設定を行ってください。
①ターミナル上で、管理したいディレクトリに移動。
②**「git init」コマンドを実行。
「Initialized empty Git repository in /Users/ユーザー名/ディレクトリ名/.git/」みたいな文言が表示される (ローカルリポジトリが作成される)。
③「git remote add origin [URL]」**コマンドを実行。
ローカルリポジトリとGitHubリポジトリ (リモートリポジトリ)が連携される。
[URL]の部分はGitHubリポジトリのページにある「https://github.com/ユーザー名/リポジトリ名.git
」というURLを指定。
GitHubリポジトリにソースコードをプッシュする
プッシュ
コミットをローカルリポジトリからリモートリポジトリに送る操作。
コミットとは、ファイルの追加や変更の履歴をリポジトリに保存すること。
①**「git status」コマンドを実行。変更したファイルの一覧を確認。
②「git add ファイル名」コマンドを実行。
指定したファイルの変更内容をインデックス (ステージングエリアとも呼ばれる)に追加し、コミットの対象にする。
(「git add -A」コマンドでディレクトリ内全てのファイルを対象にできる。)
③「git commit -m "コミットメッセージ"」**を実行。
指定したファイルの変更内容がコミットされる。
コミットメッセージはチーム内で決まりがあったりする。
**「git log」**コマンドでコミットされたか確認ができる。
**「git commit --amend」コマンドで直前のコミットのコミットメッセージを修正できる。
④「git push origin master」**コマンドを実行。
ブランチの作成方法とプルリクエスト
ブランチ
リポジトリ内でコードのバリエーションを複数保持しながら開発する際に、1つのバリエーションを管理する単位となっている概念。
新しい開発を行う場合、「master」と呼ばれるメインのブランチから枝分かれした新しいブランチ (ブランチAとする)を作成し、
ブランチA上で機能追加等を行った際は、最終的にブランチAをmasterブランチに取り込むことになる。
プルリクエスト
あるブランチに、別のブランチをマージしてもらうことの要求 (提案)。
①**「git checkout -b ブランチ名」コマンドを実行し、ブランチ作成とそこに移動。
②変更内容がコミットできたら、「git push origin HEAD」コマンドを実行。
現在のブランチと同じブランチがGitHub上に作成され、そこにプッシュされる。
③GitHubのリポジトリページに表示されたプルリクエストを作成するリンクを使い、プルリクエスト作成。
プルリクエストからコードの変更内容を確認できたり、変更箇所やプルリクエスト全体にコメントできたりする。
レビューを受け、コードを修正したくなった場合はブランチに修正コミットを積んで新たにプッシュする。
④最終的にその変更を取り込もうという段階になったら、GitHubの画面からブランチのマージを行う。
⑤ローカルリポジトリのmasterブランチに移動し、「git merge ブランチ名」**コマンドを実行。
指定した作業ブランチの内容で現在のブランチ (masterブランチ)を上書きして最新の状態に更新しておく。