GitHub CLIから任意のMarkdownテンプレートでプルリクエストを作成する

GitHubリポジトリ.github/pull_request_template.md を置くとGUIからプルリクエスト(以下PR)作成時にデフォルトでテンプレートが展開される機能があって、仕事の開発でもこの機能を各リポジトリで活用している。

ただこのテンプレート、大部分のタスクにとって不要な文言が諸事情で記載されていたり、私個人の判断で追加している定型文があったりして、毎回同じような変更をしなければいけないのがなかなかダルい。もちろん開発チーム内で議論してテンプレートの内容を変更すれば良いのだけれど、諸事情で入っている文言を外すのも、個人的な好みの文言を入れるのも、チームの合意を得るのが難しい部分だ。なので、GitHub CLIを使って手元の任意のテンプレートでPRを作成する方法を試してみた。

GitHub CLIのセットアップ

$ brew install gh
$ gh auth login

Macの場合、インストールからアカウント連携まで上の2つのコマンドで実行できる。

プルリクエストの作成

Markdownのテンプレートを作成して、PRを作成したいブランチに切り替えてから

$ gh pr create --title 'PRのタイトル' --body "`cat template.md`"

上記のコマンドでcatで出力したMarkdownファイルの内容を引数としてPRを作成できる。

これで手元で任意のテンプレートを指定してPRを作成できるようになった。