はじめに
知人数人と開発をしていて、リモートリポジトリに GitHub を使っていたのですが、Issue の品質に統一感がなく、見づらいことがありました。
そこで Issue の品質を統一しようと思い、Issue テンプレートというものがあることに気づきました。Issue テンプレートの勉強をかねて、5W1H で書けるテンプレートを作成し公開しました。
興味がある方は以下のリンクからテンプレートをダウンロードして使ってみてください。導入の仕方も下記リンクに記載してあります。GitHub や GitLab に不慣れな方でも、手順に沿って気軽に追加できるよう意識して作りましたので、是非一度お試しください。
また、私が所属するチームでは、GitHub 以外に GitLab を使うプロジェクトもありましたので、GitLab の Issue テンプレートも作成し追加しました。
Issue テンプレートの追加の仕方
- リポジトリ のコードをダウンロードします。(方法がわからなければお使いのブラウザでリンク先にアクセスし Code → Download ZIP の順にクリックして解凍してください)
- お使いのリモートリポジトリに合わせたディレクトリ(
.github
もしくは.gitlab
)をコピーします。 - お使いのリポジトリの直下(ルート)にペーストします。
- 追加したファイルをリモートリポジトリへ push します。
追加されるもの
- Issue テンプレート
- Issue の概要
- 何をすれば Issue が解決するか、追加/変更/削除する点
- 参考リンク(あれば)
- プルリクエスト/マージリクエストテンプレート
- 変更点
- レビューで見てほしいポイント(要レビュー時記載)
- 関連 Issue
- 参考リンク(あれば)
- リポジトリのガイドライン(CONTRIBUTING.md)
- このリポジトリへプルリクエストを送るには
- Issue の作り方
- ブランチの作成例
- Pull Request の作り方
Issue は「機能追加」と「動作不良」の 2 種類のテンプレートが追加されます。機能追加は enhancement
ラベル、動作不良は bug
ラベルが自動で付きます。
実際にこのテンプレートを使った Issue と Pull Request 例
おわりに
プロジェクトによってリポジトリの運用ルールはさまざまありますが、汎用的に使えそうな内容にしました。
5W1H の Issue を強制することは少々面倒になりますが、よくわからない Issue を作らないことで、後々のコミュニケーションを円滑に進められるかと考えています。
もし追加の要望などがあれば、上述のリポジトリへ機能追加の Issue を作成していただけたら幸いです。