Gitでブランチを削除する方法|ローカル・リモート両方のコマンドを徹底解説
Gitでブランチを削除するのは、ブランチをコードベースにマージした後によく行われる作業です。ローカル環境のブランチは git branch -d コマンドで、リモートリポジトリ上のブランチは git push origin --delete コマンドで削除できます。
ブランチ機能を使うと、プロジェクトの独立したバージョンを作成し、メインのプロジェクトに影響を与えることなく自由に編集できます。作業が完了したブランチは削除するのが基本で、これによりコードベースを常にクリーンな状態に保てます。
Gitでブランチを削除する方法は主に2つあります。どちらを使うかは、削除したいブランチがローカルマシン上にあるのか、リモートリポジトリ上にあるのかによって決まります。
この記事では、具体例を挙げながらGitでローカルブランチとリモートブランチを削除する方法を解説します。読み終える頃には、ブランチ削除を自信を持って行えるようになっているでしょう。
Gitにおけるブランチの基礎知識
ブランチは、Gitのようなバージョン管理システムにおいて不可欠な概念です。Gitのブランチを使うと、既存プロジェクトの新しいバージョンを作成でき、元のプロジェクトに影響を与えずに変更を加えられます。
たとえば、新機能の開発用にブランチを作成したり、修正中のバグフィックス用のコードを保存するために別のブランチを作成したりできます。
ブランチを活用すれば、準備が整うまでメインのコードベースを変更せずに、安全に作業を進められます。Gitブランチについてさらに詳しく学びたい方は、git branch コマンドの初心者向けガイドも参考にしてください。
Gitでブランチを削除する理由
ブランチを削除する理由はさまざまです。最も一般的なのは、ブランチでの作業が完了し、変更内容をすでにメインのプロジェクトに統合済みであるため、そのブランチがもう不要になったケースです。
マージ済みのブランチを放置すると、ブランチ一覧が乱雑になり、どのブランチがアクティブなのか分かりにくくなります。定期的に不要なブランチを削除することは、チーム開発における良い習慣といえます。
ローカルブランチを削除する方法
ローカルマシン上のGitブランチは、git branch -d コマンドで削除できます。-d フラグは「ブランチを削除する」という意味です。
ここで、fix-issue49 という名前のローカルブランチがあり、最近メインブランチにマージしたばかりだと仮定しましょう。このブランチには取り組んでいたバグ修正が含まれていますが、もう必要ないため削除することにします。
注意点として、現在表示中(チェックアウト中)のブランチは削除できません。 ローカルブランチを削除する前に、まず削除対象以外の別のブランチへ移動する必要があります。
fix-issue49 を削除したいので、まず git checkout コマンドで別のブランチに移動します。以下のコマンドで、ローカルリポジトリのmasterブランチに切り替えられます。
git checkout master
masterブランチに移動したので、次のコマンドでローカルの fix-issue49 ブランチを削除できます。
git branch -d fix-issue49
-d フラグはブランチの削除を指示し、fix-issue49 は削除対象のブランチ名です。このコマンドを実行すると、Gitはローカルブランチ fix-issue49 を削除します。
なお、-d フラグによる削除は安全です。削除対象のブランチに未マージの変更がある場合など、問題が検出されると削除処理は中断されます。
強制的に削除する -D フラグ
大文字の -D フラグを使うと、ローカルブランチを強制削除できます。このフラグは、他のブランチにマージされているかどうかにかかわらず、ブランチを強制的に削除します。
ただし、-D フラグは即座にブランチを削除してしまうため、慎重に使用してください。削除しても問題ないと確信できない場合は、安全な -d フラグを使うことをおすすめします。
リモートブランチを削除する方法
Gitでリモートブランチを削除するには、git push origin --delete コマンドを使用します。このコマンドは、ローカルの変更をリモートリポジトリにプッシュする際に、指定したブランチを削除するようGitに指示します。
ここで、リモートリポジトリに保存されている fix-issue12 というブランチを削除したいと仮定します。リモート名 origin はリモートリポジトリを指しています。以下のコマンドで fix-issue12 ブランチを削除できます。
git push origin --delete fix-issue12
このコマンドを実行すると、リモートの fix-issue12 ブランチが削除されます。
コマンド実行後は、fetch コマンドを実行して、リモートリポジトリ上の全ブランチの最新状態を取得しておきましょう。これにより、リモートリポジトリへの変更内容をローカル環境でも確認できるようになります。
git fetch -p
このコマンドを実行すると、ローカルのGitリポジトリがリモートリポジトリとそのブランチのコピーを取得します。-p(--prune)フラグを付けると、リモートリポジトリ上に存在しなくなったローカルの追跡ブランチも自動的に削除されます。
git fetch コマンドについて詳しく知りたい方は、git fetchの解説ガイドもあわせてご覧ください。
まとめ
開発者は通常、ブランチをリポジトリ内の他のブランチにマージした後に削除します。
- ローカルブランチの削除:
git branch -d ブランチ名 - リモートブランチの削除:
git push origin --delete ブランチ名 - 強制削除:
git branch -D ブランチ名(未マージでも削除) - リモートの反映:
git fetch -pでローカルの追跡ブランチを整理
この記事では、これらのコマンドを使ってGitのブランチを削除する方法を解説しました。これであなたも、プロのようにブランチを管理・削除できるはずです。
-
Apple IDを完全に削除する方法|事前準備から各デバイスの手順まで徹底解説
Apple IDは、iPhoneやMacなどのApple製品を使ううえで必須となるアカウントです。macOSやiOSの個人設定、FaceTime、App Store、iTunes、iCloudなど、Appleのさまざまなサービスを利用する際に必要になります。新しいApple IDを作り直したい場合や、使わなくなった古いアカウントを整理したい場合には、既存のApple IDを削除するという選択肢もあります。ただし、一度削除したApple IDは再アクティブ化も復元もできません。削除を実行する前に、この記事で紹介する事前準備と手順をしっかり確認しておきましょう。削除前の準備1. 完全に削除してよい
-
Discordの削除方法|アカウント・アプリ・キャッシュを完全に消す手順
2015年のリリース以来、Discordはシンプルで使いやすいインターフェースにより、ゲーマー向けのコミュニケーションツールとして広く利用されてきました。音声、ビデオ、テキストで世界中のユーザーとチャットできる点が最大の魅力です。WindowsやMac用のデスクトップアプリ、iOS・Android用のモバイルアプリに加え、Webブラウザからもログイン可能です。さらに、TwitchやSpotifyなど主要なサービスとも連携でき、友達が今何をしているのかを確認することもできます。しかし、何らかの理由でDiscordをアンインストールしたい場合もあるでしょう。この記事では、Windows PCからD