【Git②】GitHubを利用した開発のワークフロー

GitHub Flowの流れ

GitHubFlowのルール

✅ masterブランチは常にデプロイ可能な状態を保ち、リリース用ブランチとする
✅ 新開発はmasterブランチから新しいブランチを作成し、そこで作業やコミットを行う
✅ 定期的にPushする
✅ ブランチ上の内容を変更をしたらmasterブランチにマージするために、Pull Requestを作成する
✅ 必ず他の開発者からレビューを受ける
✅ masterブランチにマージしたらすぐ本番サーバーにデプロイする(←テストとデプロイ作業は自動化)

GitHubを使ったワークフロー

  1. mainブランチから説明的な名前のブランチを作成する($ git brach <ブランチ名>)
  2. ファイルを変更しcommitする
  3. 同名のブランチをGitHubへPushする
  4. Pull Requestを作成し開発メンバーに送信する
  5. コードを修正
  6. Pull requestブランチをGitHubのmasterブランチにmergeする
  7. テスト環境にデプロイ&テスト
  8. 本番環境にデプロイ

プルリクエストの流れ

✅ プルリクエスト自分の変更したコードをリポジトリに取り込んでもらうよう依頼する機能

✅ 誰かが変更したコードを取り込む前にレビュー(コードの変更内容を確認してもらうことでバグ発生やコードの質低下を防ぐ)を挟むために実施する

プルリクエストの手順
  1. ローカルリポジトリのmasterブランチを最新の状態にする
  2. 新たにブランチを作成しファイルを変更し、変更をローカルリポジトリにcommitする
  3. 同名のブランチをGitHubへ Pushする
  4. プルリクエストを送る
  5. 開発メンバーがコードレビューを実施する
  6. プルリクエストをGitHubのmasterブランチにmergeする

実際の手順

上記のプルリクエストを模擬して、実際にワークツリー上でコード編集~プルリクエストを送り、他の開発者から承認をもらってGitHubのmasterブランチにマージするまでをやっていきたいと思います。

👇 自分が開発するブランチ(今回はpull_requestブランチ)を切り、コード(今回はindex.html)を編集し、GitHubにpushします

👇 GitHubにアクセスし、”Pull request”をクリックします

👇 プルリクエストを作成していきます、”New pull request”をクリックします

👇 “compare”が変更したコードを含むブランチに変更し、”Create pull request”をクリックします

👇 コメントを記入し、”Create pull request”をクリックします

👇 レビューをお願いしたいエンジニア(reviewer)を選択します。以上の操作を行うことでプルリクエストが他のエンジニアにメールで送信されます。

👇 次に変更したコードを確認するレビュアーの操作を見ていきます。メール記載のurlまたは”Pull request”からプルリクエストの内容が確認できます。

👇 “Files changed”から変更されたコードを確認することができます。プルリクエストの送信者にコードの修正を依頼したい場合は修正箇所にポインタを当て+ボタンをクリックします。

👇 コメントを記入し、”Start a review”をクリックすることで修正依頼を送信します

👇 下記のようにプルリクエストの内容を開発者とレビュアー間でチャット形式でやり取りすることができます。このやりとりを経て、コードの質を上げていきます。

👇 レビュアーはプルリクエストの内容が問題ない場合は”Finish your review”から”Approve”をチェックし”Submit review”から承認します。

👇 承認がもらえた開発者は”Merge pull request”をクリックし、pull_requestブランチをGitHubのmasterブランチにマージします。

👇 マージする内容にな違いがなければ”Conform merge”をクリックします。

👇 masterブランチにマージが完了しました。開発(コードの編集)に使用していたブランチが不要の場合は”Delete branch”をクリックします。以上がプルリクエストの流れになります。

👇コードの変更が反映されたGitHubからローカルローカルにも取り込んでおきます

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です