Githubの再復習②
GitHubを用いた開発の流れを理解すること
ブランチの役割について理解すること
プルリクエストの出し方を理解すること
コードレビューの流れを理解すること
マージからpullまでの手順を理解すること
cloneとpullの違いを学ぶこと
ブランチとは
ブランチとは、リポジトリで管理しているファイルやディレクトリの変更の流れ、すなわちcommitの連なりです。リポジトリは必ずブランチを持っています。
このブランチは分岐ができます。本流を「masterブランチ」、分岐したブランチを「トピックブランチ」と呼びます。
ブランチのメリットは
・リポジトリで管理しているファイルやディレクトリの本流に影響を与えずに作業ができること
・ブランチを切ることで目的別に同時並行で作業が行えること
・不具合が発生した場合も対応が容易になること
などが挙げられる
コードの確認依頼はプルリクエストによって可能です
プルリクエスト
ブランチでのコミット履歴を残すと共に、各コミットにおける変更修正にコメントをつけることができるGitHubの機能のことを言います。以下の動画のような形で、1つのブランチでの作業について、コードを確認しつつコミュニケーションが取れる掲示板のようなものがプルリクエストです。
①プルリクエストの詳細には、What(何を)とWhy(なぜ)を書く
What(どのような実装をしているのか)とWhy(なぜこの実装が必要なのか)を書くことで、このブランチは何を実装していて、なぜその実装を行ったのかが他の人に伝えることができます。
Whatをしっかり書くことで、他者にコードを見てもらう際に、スムーズな理解を促すことができます。アプリケーションの機能が複雑になればなるほど、コードを読んだだけでは、何をしているのか把握することは難しくなるからです。
また、Whyをしっかり書くことで、本来の目的に沿ったコミュニケーションが可能です。実装目的が伝わっていないと、欲しい意見をもらうことはできません。
②マークダウン表記で書くこと
マークダウンとは記法の一種です。マークダウンを使ってシンプルな記法でHTML文書を書くことができます。
コードレビュー
コードレビューとは、複数人での開発において、コードの記述内容に問題がないか、他の開発メンバー等が確認をすることです。また、コードレビューを担当する人をレビュアーと呼びます。
masterブランチへの反映
トピックブランチで行った作業を、masterブランチへ反映します。その作業はmerge(マージ)と言います。
merge
マージと読みます。mergeは統合するという意味です。機能実装のために作成したブランチを、リモートリポジトリ上のmasterブランチに反映する作業のことです。
マージの後はpullを行い、リモートリポジトリの変更をローカルリポジトリに取り込みましょう。
pullとcloneの違いを考えてみよう
pullとcloneはどちらも、リモートリポジトリからローカルリポジトリに反映する作業ですが、明確に違いがあります。
pull :ローカルリポジトリとリモートリポジトリがすでに紐付いている状態で、リモートリポジトリの情報をローカルリポジトリに反映すること。
clone :リモートリポジトリだけ存在し、手元にローカルリポジトリがない状態で、リモートリポジトリからローカルリポジトリを作成すること。