#【GitHub ブランチとマージについて】
山浦清透さん いつもありがとうございます。
Git:もう怖くないGit!チーム開発で必要なGitを完全マスター
Gitは、大規模開発での必須ツールになっている。
複数人で複数の機能を並行して、開発することを可能にする。
##ブランチ
ブランチは、コミットを指すポインタの役目をする。
スナップショットでファイルの記録をしている仕組みを利用して、
ブランチの作成や切り替えを高速におこなっている。
ブランチを利用することで分岐して作業が出来て、効率的になる。
###ブランチを新規追加
ブランチ作成のみで、ブランチの切り替えはおこなわない。
→ git branch < ブランチ名 >
###ブランチを一覧を表示
どんなブランチがあるかを確認する。
→ git branch (全てのブランチを表示したい時は、-a を付ける。)
###ブランチを切り替え
既存に存在しているブランチに切り替える。
→ git checkout < 既存ブランチ名 >
※ブランチを新規に作成して切り替える。一度に実行できる。
→ git checkout -b < 新ブランチ名 >
###ブランチを変更・削除
自分が作業しているブランチ名を変更する。
→ git branch -m < ブランチ名 >
ブランチを削除する。
→ git branch -d < ブランチ名 >
※-dコマンドは、masterにマージされていない変更があれば、警告をしてくれる。
ブランチを強制削除をする。
→ git branch -D < ブランチ名 >
##マージ
マージは、他の人の変更内容のを取り込む作業のこと。
###変更履歴をマージする
自分の作業中のブランチにマージする。
→ git merge < ブランチ名 >
→ git merge < リモート名 / ブランチ名 >
##コンフリクト
コンフリクトとは、複数人の人が同じ箇所で別々の変更した時に起こる。
Gitが、どの変更を優先したら良いかわからなくなっている状態。
###コンフリクトを起こさないようにするには。
・複数人で同じファイルを変更しないようにする。
・pull, mergeをする前には、変更中の状態を無くしておく。
・pullする時には、pull対象のブランチに移動してから実行する。
※コンフリクトの対応を慌てずに出来るようにしておこう。