git管理していて、ローカルリポジトリでブランチ切り忘れてmasterブランチで作業、ローカルcommitまでして気付いた。 このままpushしても、当然リモートのmasterブランチにダイレクトにpushはできず、弾かれる。 PRも出せない、と思っていたが。

pushでは、ローカルとリモートの両方のブランチを指定できる。

git push origin <local_branch>:<remote_branch>

local_branchにmaster, remote_branchに本来切ろうと思っていたブランチ名を指定し、そのブランチでPRを出す。