ローカルのGitブランチの名前を変更するにはどうすればよいですか?

2011年07月06日に質問されました。  ·  閲覧回数 3.2M回  ·  ソース

Forrest picture
2011年07月06日

ローカルとリモートの両方のGitリポジトリのマスターブランチの名前を変更するで説明されているように、リモートブランチの名前を変更したくありません。

リモートブランチにプッシュされていないローカルブランチの名前を変更するにはどうすればよいですか?

リモートブランチの名前も変更する必要がある場合:
Gitのローカルブランチ名とリモートブランチ名の両方の名前を変更するにはどうすればよいですか?

回答

siride picture
2011年07月06日
14499

ブランチをポイントしているときにブランチの名前を変更する場合は、次のようにします。

git branch -m <oldname> <newname>

現在のブランチの名前を変更する場合は、次の操作を実行できます。

git branch -m <newname>

これを覚えておく方法は、 -mは「移動」(またはmv )用であり、これはファイルの名前を変更する方法です。 エイリアスを追加することも役立ちます。 これを行うには、以下を実行します。

git config --global alias.rename 'branch -m'

Windowsまたは大文字と小文字を区別しない別のファイルシステムを使用していて、名前に大文字の変更のみがある場合は、 -Mを使用する必要があります。そうしないと、gitはブランチが既に存在するというエラーをスロー

git branch -M <newname>
Madhan Ayyasamy picture
2013年01月21日
473
git branch -m old_branch_name new_branch_name

上記のコマンドはブランチ名を変更しますが、名前が変更されたブランチの使用には十分注意する必要があります。これは、ブランチに関連付けられている古いアップストリームブランチが存在する場合でもそれを参照するためです。

ローカルブランチの名前がnew_branch_name(サンプル名)に変更された後、いくつかの変更をマスターにプッシュする場合:

git push origin new_branch_name:master (変更はマスターブランチに送られますが、ローカルブランチ名はnew_branch_nameです)

詳細については、「 Gitでローカルブランチ名の名前を変更する方法」を参照してください。

Jonathan picture
2013年06月20日
352

現在のブランチの名前を変更するには:

git branch -m <newname>
Milind Anantwar picture
2015年04月15日
319

ブランチの名前を変更する手順は次のとおりです。

  1. 名前を変更する必要があるブランチに切り替えます
  2. git branch -m <new_name>
  3. git push origin :<old_name>
  4. git push origin <new_name>:refs/heads/<new_name>

編集(2017年12月1日):コマンドgit statusを実行し、新しく作成されたブランチが古いものではなく、独自の参照を指していることを確認してください。 古いブランチへの参照を見つけた場合は、以下を使用してアップストリームの設定を解除する必要があります。

git branch --unset-upstream
trungk18 picture
2016年10月14日
238

ブランチの名前を変更すると、ブランチが終了したときに役立ちます。 次に、新しいものが登場します。削除して新しいブランチを作成するのではなく、同じブランチで開発したいと考えています。

私の経験から、Gitのローカルブランチとリモートブランチの名前を変更するには、次の手順を実行する必要があります。

複数の状態からの引用-gitで

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

名前を変更したいブランチにいる場合:

git branch -m new-name

別のブランチにいる場合:

git branch -m old-name new-name

2.古い名前のリモートブランチを削除し、新しい名前のローカルブランチをプッシュします

git push origin :old-name new-name

3.新しい名前のローカルブランチのアップストリームブランチをリセットします

git push origin -u new-name
Vanchev picture
2013年09月24日
127

これまでのところ正解ですが、ここにいくつかの追加情報があります。

ブランチの名前を「-m」(移動)で安全に変更できますが、同じ名前の既存のブランチがすでに存在する場合でも、名前の変更を強制するため、「-M」には注意する必要があります。 'git-branch'のマニュアルページからの抜粋は次のとおりです。

-mまたは-Mオプションを使用すると、 <oldbranch>名前が<newbranch>ます。 <oldbranch>対応するreflogがある場合、 <newbranch>に一致するように名前が変更され、ブランチの名前変更を記憶するためにreflogエントリが作成されます。 <newbranch>が存在する場合は、-Mを使用して名前の変更を強制する必要があります。

Oss picture
2015年12月17日
101

1.名前を変更します

それが現在のブランチである場合は、

git branch -m new_name

名前を変更したい別のブランチの場合

git branch -m old_name new_name

2.新しいリモートブランチを追跡します

-ブランチがプッシュされた場合は、名前を変更した後、リモートGitリポジトリからブランチを削除し、新しいローカルに新しいリモートブランチを追跡するように依頼する必要があります。

git push origin :old_name
git push --set-upstream origin new_name
Samuel Meacham picture
2013年11月09日
78

ハイフンで始まるブランチに愚かな名前を付けてから、masterをチェックアウトしました。 私は自分のブランチを削除したくありませんでした、私はそれで仕事をしていました。

これらのどちらも機能しませんでした:

git checkout -dumb-name

git checkout -- -dumb-name

" s、 ' s、 \ sも役に立ちませんでした。 git branch -mは機能しません。

これが私が最終的にそれを修正した方法です。 作業コピーの.git / refs / headsに移動し、ファイル名「-dumb-name」を見つけて、ブランチのハッシュを取得します。 次に、これはそれをチェックアウトし、正しい名前で新しいブランチを作成し、古いブランチを削除します。

git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name
Harry_pb picture
2019年03月22日
75

remoteとGitHubで名前の変更を複製するためのわずか3つのステップ:

ステップ1 git branch -m old_branchname new_branchname

ステップ2 git push origin :old_branchname new_branchname

ステップ3 git push --set-upstream origin new_branchname

aliasav picture
2015年08月20日
74

ローカルでブランチの名前を変更するには:

git branch -m [old-branch] [new-branch]

次に、これらの変更をリモートサーバーにも伝達する必要があります。

削除された古いブランチの変更をプッシュするには:

git push origin :[old-branch]

新しいブランチの作成の変更をプッシュするには:

git push origin [new-branch]