git でリモートブランチを削除してしまう間違った push
実際にやってしまったミス。
git push のフォーマットは
$ git push <送信先リポジトリ> <ローカルブランチ>:<リモートブランチ>
なので、ローカルブランチが (no branch) の場合、してしなくても良いのだと思い
$ git push origin :foo
などと入力したところ
To git://172.26.xxx.xxx/xxx.git - [deleted] foo
というメッセージが表示された。
後でわかったことだが、ローカルブランチを書かずに push すると、それはリモートブランチを削除する意味だったのだ。
削除してしまったリモートブランチはもうそのリモートブランチ上で作業ができないので、コミットなどと違い取り消すことができず、結局ブランチを作りなおして復旧した。
みなさん、お気を付けください。