GitHubのPRテンプレート(iOS・Android)


はじめに

本記事は エムティーアイ Advent Calendar 2021 の8日目の記事です。
昨日は @uhooi標準エラー出力する方法(Swift) でした。

iOSとAndroidアプリ開発で使える、GitHubのPRテンプレートを紹介します。

PRのテンプレート作成

PRのテンプレートは .github/ フォルダに pull_request_template.md ファイルを作成することで、自動的に適用されます。

PRのテンプレート紹介

PRのテンプレートを紹介します。

iOS

iOSアプリ開発で使えるPRのテンプレートです。

pull_request_template.md
## Issue

- close #TBD

## Overview

TBD

## Details (Optional)

TBD

## Screenshots (Optional)

|Before|After|
|:--:|:--:|
|TBD|TBD|

## Checklist

- [ ] Format code with SwiftLint (<kbd>⌘B</kbd> in Xcode)
- [ ] Resolve Xcode warning

## What to check (Optional)

- [ ] TBD

## Reference(s) (Optional)

- https://example.com

Issue

対応するIssueがある場合に記述します。

Overview

PRの概要を簡潔に記述します。

Details

必要に応じて、PRの内容を詳細に記述します。

Screenshots

UIに変更がある場合、変更前後のスクリーンショットを掲載します。

Checklist

レビュー前に行うべきチェックリストです。
完了したら [x] にし、すべてチェックできたらPRを作成します。

Format code with SwiftLint

SwiftLintでコード整形したかどうかのチェックです。
私はビルドフェイズでSwiftLintによるコード整形を実行しているので (⌘B in Xcode) と記述しています。

Resolve Xcode warning

Xcodeの警告を解消したかどうかのチェックです。

What to check

レビュアーに確認してほしい内容がある場合、その内容を記述します。
確認できたらレビュアーが [x] にします。

Reference(s)

参考リンクがある場合に記述します。

Android

Androidアプリ開発で使えるPRのテンプレートです。

Checklist の内容以外はiOSと同様です。

pull_request_template.md
## Issue

- close #TBD

## Overview

TBD

## Details (Optional)

TBD

## Screenshots (Optional)

|Before|After|
|:--:|:--:|
|TBD|TBD|

## Checklist

- [ ] Format code (<kbd>⌥⌘L</kbd> in Android Studio)
- [ ] Optimize imports (<kbd>^⌥O</kbd> in Android Studio)
- [ ] Resolve Android Studio warning

## What to check (Optional)

- [ ] TBD

## Reference(s) (Optional)

- https://example.com

Checklist

AndroidではiOSと異なるチェックリストのみ詳細を説明します。

Format code

Android Studioでコード整形したかどうかのチェックです。
macOSの場合は ⌥⌘L で実行できます。

Optimize imports

Android Studioでインポートを最適化したかどうかのチェックです。
macOSの場合は ^⌥O で実行できます。

Resolve Android Studio warning

Android Studioの警告を解消したかどうかのチェックです。

おわりに

これでレビューイがPRの概要欄に何を書けばいいか考える負担を減らし、レビュアーはPRのレビュー時に欲しい情報を過不足なく知りやすくなります

みなさんもテンプレートを作成していたら、私と違う箇所などを教えていただけると嬉しいです。

以上 エムティーアイ Advent Calendar 2021 の8日目の記事でした。
明日は @piz032 さんで S3 BucketへのファイルのデプロイまでAWS CDKでやりたかった話 です。

参考リンク