Corredor

ウェブ、プログラミングの勉強メモ。

なぜ git push コマンドでリモートブランチが削除できるのか

前回の記事で、GitHub 上の master ブランチを削除するときに使った git push コマンドで、なぜコロン「:」を使うとリモートブランチが削除できるのか、の解説。

neos21.hatenablog.com

ドンズバに解説しているサイトがあったので紹介。

shoma2da.hatenablog.com

本来、git push コマンドは以下のように使うことで、別のブランチへの push ができる。

$ git push (ローカルのブランチ名):(リモートのブランチ名)

# ローカルの dev ブランチからリモートの master ブランチに push する
$ git push dev:master

git push origin hoge はリモート・ローカルのどちらも hoge を指定する、という省略した書き方だったのです!

これが分かれば、(ローカルのブランチ名) 部分に何も指定しないことで、リモートのブランチを削除する、という動きになることも分かると思う。

$ git push origin (何も書かない):(リモートのブランチ名)

# リモートの master ブランチを削除する
$ git push origin :master