Git でブランチの名前を変更する方法

公開: 2022-12-26

青色の背景に Git のロゴ

現在のローカル ブランチの名前を変更するには、「git branch -m new-name」を使用します。 ローカル ブランチの名前を別のブランチ内から変更するには、「git branch -m old-name new-name」を使用します。 リモート ブランチの名前を変更するには、「git push origin --delete old-name」で削除してから、名前を変更したローカル ブランチを「git push origin -u new-name」でプッシュします。

分岐は、Git では簡単な作業です。 残念なことに、些細なタスクが注目されることはめったになく、間違いが起こります。 ブランチの名前を間違えた場合は、名前を変更する必要があります。 その方法は次のとおりです。

目次

Git でブランチ名が重要な理由
名前を変更する前に Git でブランチを一覧表示する
Git でローカル ブランチの名前を変更する方法
Git でリモート ブランチの名前を変更する方法
ブランチの名前変更は簡単です

Git でブランチ名が重要な理由

従来のバージョン管理システム (VCS) のブランチに関係することは、すべて大きな問題でした。 ブランチが追加またはマージされていることを協調して理解する必要があり、そのリポジトリを使用するすべての人は、操作を続行して成功させるために、何もしていないか、何かをするのを忘れていないことを確認する必要がありました。

ブランチを含む操作も非常に遅いことがよくありました。 枝を使ったタイムペナルティトップがありました。 Git は最初から他とは異なるように設計されています。 これは分散バージョン管理システムであるため、すべてのユーザーがローカル マシンに完全なリポジトリのコピーを持っています。

Git リベース: 知っておくべきことすべて
関連Git リベース: 知っておくべきことすべて

ローカル マシンでブランチを作成しても、ブランチをリモート リポジトリにプッシュしない限り、他のユーザーには影響しません。 また、Git では、ブランチ操作は使いやすく、すばやく完了するように設計されています。 Git での分岐は、計算面で非常に安価です。 これは、ローカル リポジトリ内での簡単なアクションです。

実際、開発者は分岐すること、そして頻繁に分岐することが奨励されています。 ブランチは、VCS 内で利用できるもう 1 つのツールです。 ブランチは、Git ではそれほど恐ろしいものではなく、最もよく使用される機能の 1 つです。

しかし、親しみやすさは軽蔑につながる可能性があります。 または、少なくとも、枝に対するさりげない敬意に。 Git での分岐は迅速かつ簡単かもしれませんが、分岐を作成するときはまだ集中する必要があります。 ブランチ名を間違えたり、間違った名前を入力したりして、不適切な名前のブランチが作成されるのは簡単です。

ある時点でブランチがリモート リポジトリにプッシュされる場合は、正しいスペルが必要です。 そうでない場合、他の人が使用しようとしたときに混乱を招きます。

関連: Git ブランチはどのように機能しますか?

名前を変更する前に Git でブランチを一覧表示する

現在のブランチ名が何であるかを確認することは、適切な最初のステップです。 git branchコマンドは、ブランチを一覧表示します。 次のコマンドを使用して、ローカル リポジトリのブランチを表示できます。

 gitブランチ

git branch コマンドを使用してローカル ブランチを一覧表示する

支店は私たちのためにリストされています。 現在のブランチは緑色で強調表示され、アスタリスクが付いています。

ブランチとそのコミットを表示するには、 show-branchコマンドを使用できます。

 git ショーブランチ

git show-branch コマンドを使用してブランチとそのコミットを一覧表示する

-r (リモート) オプションを含めることで、リモート リポジトリのブランチを表示できます。

 git ブランチ -r 

git branch -r コマンドでリモート ブランチを一覧表示する

1 つのコマンドでローカル ブランチとリモート ブランチを表示するには、 -a (all) オプションを使用します。

 git ブランチ -a 

git branch -a コマンドを使用してローカル ブランチとリモート ブランチを一覧表示する

リモート ブランチよりも多くのローカル ブランチがあります。 ブランチ「feature16」はまだリモート リポジトリにプッシュされていません。 これは通常の操作の一部であり、問​​題ではありません。

問題は、ブランチ「feature19」は「feature18」という名前にする必要があることです。 それが私たちが修正しようとしている間違いです。

関連:個別の Git ブランチを更新および維持する方法

Git でローカル ブランチの名前を変更する方法

ブランチの名前をローカルで変更するには、2 つの方法があります。 ブランチをチェックアウトして名前を変更するか、他のブランチで作業中にブランチの名前を変更できます。

現在のブランチの名前を変更するには、名前を変更するブランチをチェックアウトして使用していることを確認してください。 次に、 -m (移動) オプションを指定してgit branchコマンドを使用します。

 git チェックアウト機能19
 git ブランチ -m 機能 18 

ブランチ「feature19」をチェックアウトして名前を変更する

「feature19」ブランチをチェックアウトし、名前を「feature18」に変更しました。 ブランチがどのように見えるか見てみましょう。

 gitブランチ

ブランチを一覧表示して、ブランチ「feature19」が「feature18」に名前が変更されたことを確認します

ローカル リポジトリでブランチの名前が正しくなりました。

必要に応じて、別のブランチで作業しているときにブランチの名前を変更できます。 これは、「master」ブランチで作業している例です。

 gitブランチ

master ブランチにいることを確認するためにブランチを一覧表示する

使用するコマンドは以前と同じコマンドですが、名前を変更するブランチの現在の名前と、必要な新しい名前を指定する必要があります。

 git ブランチ -m 機能 19 機能 18
 gitブランチ

あるブランチの名前を別のブランチ内から変更する

ここでも、ローカル リポジトリのブランチの名前が正しい名前に変更されています。

関連: GitHub で新しいブランチを作成する方法

Git でリモート ブランチの名前を変更する方法

リモート リポジトリには、古い名前のブランチがまだ保持されています。 リモート ブランチの名前を変更するには、古いブランチを削除し、新しいブランチをプッシュします。

他のユーザーがこのブランチを使用してコミットをプッシュする場合は、ローカルで名前を変更する前にプルを行う必要があります。 これにより、ローカル リポジトリが最新の状態になり、他のユーザーが行った変更が失われることがなくなります。 ローカルでブランチの名前を変更する前に、変更をリポジトリにプルして戻すことは、リモート リポジトリにプッシュして戻すときに、それらの変更が新しいブランチにあることを意味します。

ブランチの状態を見てみましょう。 -a (all) オプションを使用して、ローカル ブランチとリモート ブランチの両方を表示します。

 git ブランチ -a 

git branch -a コマンドを使用してローカル ブランチとリモート ブランチを一覧表示する

「feature19」をリモート リポジトリから削除し、「feature18」をリモートにプッシュする必要があります。

 git push origin --delete feature19 

git --delete オプションを使用してリモート ブランチを削除する

リモート リポジトリのパスワードを求められます。 削除が完了すると、確認メッセージが表示されます。

次に、新しいブランチをリモートにプッシュし、-u (上流に設定) オプションを使用します。

 git push origin -u feature18 

ブランチをリモート リポジトリにプッシュする

繰り返しますが、リモコンのパスワードの入力を求められます。 新しいブランチがリモートにプッシュされ、ブランチ「feature18」がブランチのローカル コピーの変更を追跡するように設定されていることがわかります。

ローカル ブランチとリモート ブランチの状態をもう一度確認してみましょう。

 git ブランチ -a 

git branch -a コマンドを使用してローカル ブランチとリモート ブランチを一覧表示する

私たちのブランチはローカルとリモートの両方で名前が正常に変更され、リモート ブランチはローカル ブランチの変更を追跡しています。

関連:ローカルおよびリモート リポジトリで Git ブランチを削除する方法

ブランチの名前変更は簡単です

Git を使用すると、ブランチの名前を簡単に変更できます。 名前の変更が必要なリポジトリまたはブランチを使用するのがあなただけである場合、それは非常に簡単です。

他の人がブランチを共有している場合は、ブランチの名前を変更するつもりであること、およびコミットされていない作業をプッシュする必要があることをその人に伝えてください。 プッシュが完了したら、ブランチをプルして、ブランチの名前をローカルおよびリモートで変更できます。

関連:複数のリモート リポジトリで git を使用する方法