そもそもなにをしてしまったかというと、リモートのブランチをWEBサービス上で消したら、ローカルからpushできなくなるという事象です。
楽しようとしたが故の失敗でした。
ということでまとめていきます。
まず、いまあるブランチを確認するgit branchにオプション-aをつけるとリモートのブランチも表示することができます。
$ git branch -a
master
feature-temp
remotes/origin/master
remotes/origin/feature-temp
上の2行がローカルのブランチで、remoteから始まる下の2行がリモートのブランチです。
今回は、feature-tempブランチを削除をしてみたいと思います。
まずは、ローカルのブランチを削除します。
$ git branch -d feature-temp
Deleted branch feature-temp (was 87047b1).
削除するときは、git branchコマンドに-dオプションをつけ、最後に削除するブランチ名を指定します。
これで、ローカルは削除できたので次はリモートを削除します。
リモートのブランチを削除するときは、下記のように削除したブランチ名の先頭にリモートブランチを指定するために「:」をつけてpushします。
$ git push origin :feature-temp
To https://your-repo.git
- [deleted] feature-temp
コマンド実行後にdeletedが表示されれば正常に削除完了!
ローカルだけ削除して、リモートを削除し忘れるとよく分からないことになるので、今後も気をつけようと思います。