Githubでmasterやmainなど(あるいは1番最初)のブランチをプッシュして削除しようとすると、次のようなエラーが発生します。
fオプションによる強制プッシュも効きません。
このエラーの原因と対処法について解説しています。
エラーの原因
エラーの原因は指定したブランチがGithubでデフォルトのブランチに設定されているためです。
デフォルトのブランチを他のブランチに変更すれば、削除することができます。
デフォルトブランチの例
デフォルトブランチはGithubでブランチ名のプルダウンをクリックすると確認することができます。
対処法|デフォルトブランチの変更
デフォルトブランチの設定は「Settings」タブの「Branches」で行います。
矢印アイコンをクリックして、表示されたウィンドウでデフォルトに設定したいブランチを選択します。
Updateをクリックすると確認画面が表示されるので、「I understand, update the default branch.(理解しました)」をクリックすれば完了です。
デフォルトブランチが切り替わりました。
リモートブランチの削除
Githubのデフォルトブランチの設定が終わったので、再度リモートブランチを削除するコマンドを実行します。
$ git push origin :dev
To https://github.com/user/test.git
- [deleted] dev
エラーが発生せず削除することができました。