GitHubのプルリクエストをする際、ちょっと気を抜くと雑になってしまうことが恥ずかしながらあったりします….
プルリクエストを見てくれる人(レビュワー)の人を考えてコメントを残すべきなのに本当にお恥ずかしい限りなのですが、そんな自分への戒めも兼ねて、GitHubのプルリクエスト(Pull Request)作成時のコメントで気をつけること&テンプレートを考えてみたので、今回の記事で書いてみたいと思います!
目次
GitHubのプルリクエスト作成時のテンプレート
まずはいきなりですが、自分が最近やっているGitHubのプルリクエスト作成時のテンプレートを書いてみたいと思います!
```jsx
## やったこと
プルリクエストの目的・概要を記述します。
## やってないこと
プルリクエストの範囲外ととしたことを記述していきます。
相手が見たときに「なぜこの内容は含めていないんだろう?」と思われるケースもあるかと思いますので、
何をして何をしていないかは両方書いた方がいいと思いました。
(可能であればその理由も)
## 具体的な変更内容
何をどう変更したのかを具体的に記載していきます。
必要に応じてスクリーンショットを入れます。
コード上で具体的な説明が必要な場合(この変更はどんな意味があるかなど)は、
コードにインラインで記述を入れていきます。
例)
1. MantineのTitleコンポーネントを利用して、見出し用の `MqTitle`コンポーネントを作成しました。
2. 見出しレベルごとのフォントサイズと太さの定義を`theme.ts`内に行いました。
### 参考文献・URLなど
変更内容の把握や動作確認を行う上で、もし読むべきドキュメントなどがあればURLを添えて参照するようにする
例)
> ※参考URL
> MantineのTitleコンポーネントのドキュメント
> https://mantine.dev/core/title/
### 【前提として必要な知識・情報】
仮に特筆すべきことがあれば記述する
## 動作確認
ここには、相手にやってほしいことを書く。(具体的なテスト手順を記載してください)
どのページを開いて、どんな操作をし(例えば、どのボタンをクリックするとかなど)、
どんな結果が期待されるのかを記載する
例)
1. `MqTitle` コンポーネントを使用して、各見出しレベル(h1〜h4)でのレンダリングを確認してください。
2. ブラウザの開発者ツールを使用して、適用されたスタイルがFigmaのデザインガイドラインと一致しているかを確認してください。
## 該当タスク
タスク管理ツールや、あるいはGitHub Issueの番号を記載します。
「何の根拠に基づいてこの作業をしたのか)
```
色々と試行錯誤するところはありますが、現状こんな感じかなと考えています。
Githubのプルリクエストを作成する上で意識したい観点
GitHubのプルリクエストを作成する上で意識したい観点をまずは考え、まとめてみました!
1. 大前提として、相手が自身の対応内容について前提知識0のつもりで、そんな方が見てもわかるようにする
まずは1つ目です。プルリクエストを作成するということは、その内容を誰かが見る・読むということになります。
だから、自分のプルリクエストの内容を読んでもらう時に、相手がプルリクエストの内容を読むのに苦労しないことを意識するのが大切だと思います。
それこそ、自分の対応内容について相手が前提知識0の状態でプルリクエストの内容を読む、そういう認識を持つくらいがちょうどいいのかもしれません。
2. 読んでもらう人の手間をなるべく省く
次に、「プルリクエストを読んでもらう人の手間をなるべく省く」ことが大事だと思います。
プルリクエストの内容を読んでいるときに、例えば何かのライブラリを使用していて、ライブラリの仕様を見ないと内容の理解ができないというケースがあるかと思います。
そういった場合、ライブラリの公式ページなどをURLとして添えておけば、仕様を確認する際に「該当ページを探す」という手間が省けたりします。
それ以外にも、プルリクエストや何かしらのタスク管理ツールに紐づいたプルリクエストの内容であることも多いかと思いますので、該当タスクやIssueのURLを添えてあげるだけでも、プルリクエストを読む人の手間が相当に省けるのではないかと思います。
3. 読んでもらう人に何をしてほしいかを明確に書く
次に、「読んでもらう人に何をしてほしいか」を明確に書く、です。
これは読んで字の如くですが、読んでもらう人に何をしてほしいかを明確に書くことで、2と同様、読んでもらう人の手間を省くだけでなくプルリクエストを作る人の認識を図ることができます。
なぜ認識を図ることが大事なのかというと、「プルリクエストを作った人の認識をしっかりと文面化」することで、仮にその認識に相違がある場合にも、早い段階で修正を図ることが可能になるからです。
4. 自分の考えていることを書く
先ほども書きましたが、次に「自分の考えていることを書く」です。
その重要性は先ほども記載した通りですが、他にも
- プルリクエストを作成する上で、作成者が懸念していることがあれば書く
- プルリクエストによる影響範囲(と認識していること)も書く
ようにすれば、先ほど書いた通り、
仮にその認識に相違がある場合にも、早い段階で修正を図ることが可能になります。
まとめ
ということで、今回は「GitHubのプルリクエスト(Pull Request)作成時のコメントで気をつけること&テンプレートを考えてみた」という内容でブログを書いてみました!
この記事は、適宜修正を図っていきたいと思います!