SET 0425分
ブランチとレビュー
並行した変更をブランチで分け、プルリクエストで意図と確認結果を共有します。
このレッスンのメニュー
公開中のWebサイトを直しながら、完成まで数日かかる機能も作るとします。 二つの変更を同じ履歴へ順番に記録すると、公開したい修正へ作りかけの機能が混ざります。
Gitでは、共通の履歴から作業用の履歴を分け、完成後に必要な変更を合流できます。
二つの変更を別々に進める
ブランチ(branch)は、履歴上の一つのコミットを指す名前です。 作業用のブランチを作ると、共通の履歴を残したまま、新しいコミットを別の方向へ追加できます。 新しいコミットを作ると、現在のブランチがそのコミットを指すようになります。
git switch -c add-healthcheck
git add healthcheck.conf
git commit -m "Add HTTP health check"
git switch -cは、現在のコミットを指す新しいブランチを作り、そのブランチへ作業場所を切り替えます。
その後に作るコミットは、作業用ブランチの履歴へ追加されます。
確認した変更を共通の履歴へ合流する
マージ(merge)は、分かれた二つの履歴を一つにつなぎます。 作業用ブランチの変更を確認したあと、mainなどチームで共有するブランチへマージします。
プルリクエストで変更の意図を共有する
プルリクエスト(pull request)は、GitHubなどの外部サービスが提供する、変更を共有して取り込む前に確認する機能です。 コードだけでは残りにくい情報も書きます。
- 何を変えたか
- なぜ必要か
- どう確認したか
- 影響しそうな範囲
- 戻す場合の方法
レビューは誤りを探すだけでなく、運用できる知識を複数人へ広げる作業です。
同じ場所を変更したときの衝突を解く
同じ行付近を別々に変更すると、Gitだけでは正しい結果を決められません。 両方の意図を読み、最終的に必要な内容へ編集し、テストしてから解決済みとして記録します。
Gitが付けた衝突箇所の印を消したあと、ビルド、テスト、設定の構文確認など、そのファイルに合った検証まで行います。
このレッスンは完了
このページで扱った流れを確認したら、次の内容へ進みます。