Git でブランチの名前を変更(rename)するためのコマンドについてです。付随する操作もまとめました。
目次
ブランチの名前を変更する git branch -m
ブランチ名を変更するには git branch の 「-m, --move」オプションを使います。
この記事ではブランチ名の変更と、それに付随する Git 操作もフォローしていきますので、4つのステップで進みます。
1ローカルブランチ名の変更
早速やってみましょう。わかりやすさのために、ここではブランチ名を「new-branch」とリネームしますね。
// ブランチ名を変更する Git コマンド
$ git branch -m new-branch
「git branch --rename 」とかいうオプションではないので、なんだか一瞬覚えにくいですが、よく考えればLinux 環境のファイル名の変更と一緒ですね。
2名前変更したブランチを、リモートにも反映する
さきほど名前を変更したローカルブランチを、リモートにも反映します。「リモートブランチの名前を変える」といったコマンドはありませんので、git push してやる必要があります。
// 変更したブランチを Push します。
$ git push -u origin new-branch
-u は「--set-upstream」のショートハンドですね。upstreamは「上流ブランチ」の略です。
リモートにある new-branchと、ローカルの new-branch を関連付けておくと、「git push」と引数無しで、コマンドするだけで、該当のブランチにPushできるようになったりします。
「上流ブランチ」については、こちらの記事も見ておいてくださいね。
3変更前の、古い名前のブランチをリモートから削除
ここまでの操作では、まだリモートに古いブランチ名「old-branch」が残ってしまっています。これを削除します。下記のいずれのコマンドでもかまいません。
// リモートブランチを削除するコマンド
$ git push --delete origin old-branch
// 同義
$ git push origin :old-branch
:my-old-branchというのは、コロンの前に本当はローカルブランチ名が来るはずなのですが、カラ文字なので、<空>をPUSHするという意味になるようです。
4古い名前のリモート追跡ブランチも削除
古いブランチのリモート追跡ブランチもローカルに残っているはずですので、こいつも消してやります。下記のいずれのコマンドでもかまいません。
// リモートブランチを削除するコマンド
git branch -dr old-branch
// 同義
git branch --delete --remotes old-branch
「-r」 は「--remotes」のショートハンドですね。git branch は基本的にローカルのブランチを操作するコマンドです。
ブランチの削除については、こちらに詳しくまとめましたのでぜひどうぞ。
Git のブランチ名の変更に関する参考情報
ブランチ名の変更にかんする、参考情報です。
こちらは公式ドキュメントへのリンクです:
以上になります。