`hub pull-request`でプルリクエストのタイトルと本文を投稿する

WP-CLIというツールのコミッターになって、いろいろと細かいところに取り組んでいるのですが、その中で同じ内容のプルリクエストを複数のリポジトリに送るというシチュエーションによくでくわします。

一応CLIツールの開発チームなのでこういう作業をひとつずつ手作業でやると Slack とかで 「Hey!」とか言われてしまうので、 シェルスクリプトを作ってある程度自動化してしまうのがこのチームの習慣です。

#!/usr/bin/env bash

set -ex

git checkout -b update-package
wp scaffold package-readme . --force
wp scaffold package-github . --force
git add .
git commit -m "Update package with latest scaffolded components"
git push origin update-package
echo -e "Update package with latest scaffolded components\n\nRelated: https://github.com/wp-cli/wp-cli/issues/4252" | hub pull-request -F -

この最後の行で hub という GitHub さん謹製のコマンドを使用してプルリクを送っているのですが、

$ hub pull-request -m "Hello"

とやるとタイトルにしかメッセージが入らなかったのでいろいろ調べた結果、このシェルスクリプトのようにやればいいということがわかりました。

$ echo -e "タイトル\n\n本文" | hub pull-request -F -

hub コマンド便利ですね。

$ hub browse

とか打つとそのリポジトリのGitHubのページを開いてくれます。