差分なしで GitHub の Pull Request を作る方法
はじめに
GitHub においてファイルの差分がない状態でプルリクエストを作る方法を解説します。
背景
GitHub を活用した開発において、ファイルの差分がない状態でプルリクエストを作りたい場面が意外と多くあります。
例えば、実装開始前に作成しておくことでモブプロメンバーやレビュアーにプルリクエストを共有したい場合などです。
課題
しかし、 GitHub においては、差分がない状態でプルリクエストを作ることができません。
試しにブランチだけ作ってみたところ、 "There isn’t anything to compare." と表示され、プルリクエストを作成するボタンが表示されません。

解決方法
コミットの差分がない場合にプルリクエストが作成できない仕様になっているため、裏を返せば空コミットが 1 つでもあればプルリクエストが作成できることになります。
次の手順で実装の差分なしでプルリクエストを作成できます。
- ブランチを作成
- 空コミット git commit --allow-empty -m "feature"
- プッシュ
- プルリクエストを作成

Creating a pull request - GitHub Docs
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request
Visual Stadio Code で空コミットする方法
参考までに、Visual Stadio Code の Git 結合においては、差分がないと「Commit」ボタンが活性化しないという問題があります。

と思いきや、コミットメッセージを記入した後 Ctrl + Enter を入力すると、空コミットを作成するか尋ねるダイアログが表示されました。
このダイアログ上の「Create Empty Commit」ボタンを押下すると、空コミットが作成できます。

まとめ
GitHub において、差分がない状態でプルリクエストを作成する方法を解説しました。
実装前にプルリクエストを作成したい場合に活用してみてください。
ただ、空コミットが残ってしまうという欠点があります。より良い方法があれば教えてください。