GitとGitHubでプルリクエストをする時の手順です。エディタはVScodeを使用します。
現場で利用経験が無い方が多いので説明用にまとめました。
プルリクエストとは?
プルリクエストはブランチで行った変更の依頼をすることです。
ブランチをレビューをすることで変更が正しいかの確認をすることができます。

前提条件
こちらの記事の続きからとなります。
手順
- developブランチからfetureブランチを切る
- fetureブランチをGitHubのrepositoryにpushする
- GitHubでdevelopブランチにpull requestをする
- GitHubでpullRequestをdevelopブランチにmergeする
developブランチからfetureブランチを切る
ブランチの切り方に関してはこちらの記事を参考にしてください。
fetureブランチをGitHubのrepositoryにpushする
ステージング、コミット、プッシュまではこちらの記事を参考にしてください。
GitHubでdevelopブランチにpull requesをする
「2. fetureブランチをGitHubのrepositoryにpushする」でpushしたrepositoryが表示されていることを確認します。developに対してpull requestをしていきます。

「Pull requests」を選択

「New pull request」を選択

baseが変更内容の取り込み先ブランチとなります。
compareが取り込み元のブランチとなります。
baseにcompareで選択したブランチの変更を取り込む。
「base:develop」「compare:feature」に変更します。

これでdevelopにfeatureで変更した内容を取り込むことができます。
必ず取り込み先と取り込み元の確認を行うようにしてください。
後は「Able to merge」の表記を確認してから「Create pull request」を選択する。

「Write」にpull request内容を書きます。

現場ごとに書き方変わってくると思いますが、何の修正・変更点なのかを記述することが大事です。
画面だと結果の画像を入れるとわかりやすいので入れておきます。
pull requestの書き方サンプル
# 大量のテキストボックスコンポーネントのレンダリング手順を追加しました。
## 変更点
1. テキストボックスをコンポーネント化
```<input type='text' name='input01'></input>``` → TextBox.jsx
2. map関数にてレンダリング
```{data.map((value, index) => {
return (
<div key={index}>
{data[index].map((value, index) => {
return <TextBox key={value} index={index} />
})}
</div>
)
})}
```
## 結果のレイアウト

markdown形式なのでPreviewで結果が見れます。
問題無ければ「Create pull request」を選択する。


Pull requestが完了しました。

下の方にスクロールするとpull request結果の取り込み確認画面があります。
何か問題があれば「Comment」することもできます。
何も問題無ければ「Merge pull request」を選択するとfeatureでの変更点がdevelopに取り込まれます。

「Confirm merge」を選択する。

mergeが完了しました。
「Delete branch」を選択するとGitHub上のfetureブランチを削除することができます。
複数人で開発しているとブランチが大量に残ることになるので、何のブランチかが本人以外にわからなくなったりします。取り込み完了したブランチは削除しておいたほうが良いでしょう。

おすすめのUdemy講座
GitでおすすめのUdemy講座を紹介します。
Git: もう怖くないGit!チーム開発で必要なGitを完全マスター

GitHub Flowでのバージョン管理を学べるため現場で即役立つ内容となっています。
Gitの基本的な内容も網羅しているのでおすすめです!
ちゃんと学ぶ、Git/GitHub・SourceTree講座(Win/Mac対応・コマンド対応)

Gitを学ぶ上でクライアントソフトを使うメリットは視覚的にわかりやすいことです。
現場によってはSourceTreeなどのクライアントソフトを使用することもあるので知っておいて損はないと思います。