git ブランチ名変更:ローカルとGitHub上の両方を変更する手順

スポンサーリンク

git ブランチ名変更:ローカルとGitHub上の両方を変更する手順

git branch -m でブランチ名を変更できます。ローカルだけなら1コマンドで完了しますが、リモートにプッシュ済みの場合は追加の手順が必要です。


ローカルのブランチ名を変更する

現在チェックアウト中のブランチを変更する

git branch -m 新しいブランチ名

別のブランチを変更する(チェックアウト不要)

git branch -m 古いブランチ名 新しいブランチ名

チェックアウトしていないブランチも変更できます。

同名のブランチが既に存在する場合

通常はエラーになります。強制的に上書きするには -M(大文字)を使います。

git branch -M 新しいブランチ名

ステージ状態は関係ない

git branch -m は staged・unstaged・untracked ファイルがある状態でも実行できます。git checkoutgit switch と違い、作業中の変更に影響しません。


リモートにも反映する

リモートにプッシュ済みのブランチは、ローカルで名前を変えてもリモートには反映されません。以下の手順で反映します。

1. ローカルのブランチ名を変更する

git branch -m 古いブランチ名 新しいブランチ名

2. リモートの古いブランチを削除する

git push origin --delete 古いブランチ名

3. 新しい名前でリモートにプッシュする

git push origin 新しいブランチ名

4. upstream(追跡先)を再設定する

ローカルブランチの追跡先が古いブランチ名のままになっているため、更新します。

git push --set-upstream origin 新しいブランチ名

または短縮形:

git push -u origin 新しいブランチ名

手順をまとめて実行する

よく使うのは「現在のブランチを rename してリモートに反映」するパターンです。

# 1. ローカルのブランチ名を変更
git branch -m 新しいブランチ名

# 2. リモートの古いブランチを削除
git push origin --delete 古いブランチ名

# 3. 新しい名前でプッシュして upstream を設定
git push -u origin 新しいブランチ名

GitHub のデフォルトブランチを変更する

mainmaster のようにデフォルトブランチ自体を変更する場合は、GitHub の Settings から変更します。

  1. リポジトリの Settings を開く
  2. BranchesDefault branch を選択
  3. 新しいブランチ名に変更して Update をクリック

CLI で変更する場合は gh コマンドを使います。

gh repo edit --default-branch 新しいブランチ名

まとめ

操作 コマンド
現在のブランチを rename git branch -m 新しい名前
別のブランチを rename git branch -m 古い名前 新しい名前
強制上書き git branch -M 新しい名前
リモートの旧ブランチを削除 git push origin --delete 古い名前
新しい名前でプッシュ git push -u origin 新しい名前
デフォルトブランチを変更(CLI) gh repo edit --default-branch 新しい名前

Git の便利なコマンドを他にもまとめています。「Git & GitHub Tips集:知っておくと便利なコマンド・操作まとめ」も参照してください。