gitブランチの削除コマンド
最初にコマンドを記載します。
末尾は-Dとしていますが、削除したい方法に合わせて-dに変更してください。
※この記事でいうブランチは「ローカルブランチ」を指します。
$ git branch | peco | cut -b 3- | xargs git branch -D
こちらのコマンドを使用することで git のブランチ名を都度入力やコピペすることなく、
複数選択して削除することができます。
(pecoをインストールしていることが前提です)
pecoについての参考記事
https://qiita.com/tmsanrinsha/items/72cebab6cd448704e366
上記コマンドを実行すると存在するブランチ一覧が表示され、
選択→削除できる状態になります。
複数の行選択は
Ctrl + Space
でできます。
以下はブランチ削除するブランチを選択した状態です。
(色は環境によると思いますが私の環境では水色になっています)

pecoを使わない場合
ちなみにpecoを使わずgitのローカルブランチを削除する基本コマンドは以下です。
マージ済みブランチの削除
$ git branch -d [ブランチ名]
強制削除
$ git branch -D [ブランチ名]
[ブランチ名]をコピペするのが意外と手間です。
コマンドについて簡単に説明
$ git branch | peco | cut -b 3- | xargs git branch -D
では「|(パイプ)」で区切っているコマンドごとに見てきます。
-
git branch- ブランチの一覧を表示
-
peco- pecoを実行
-
cut -b 3-- cut:必要な項目を表示
- -b:必要な項目をバイト数で指定するオプション
- 3-:3バイト目以降を表示
※git branchコマンドを実行してブランチ一覧を表示するとわかりますが、
各ブランチ名の先頭に2バイト分の空白があるためそれを取り除き3バイト目以降を全表示します
-
xargs git branch -D- xargs:標準出力やファイルからリストを読み込み、任意のコマンドに引数として渡します。
あるコマンドの実行結果や出力内容をパイプ (|) で xargs コマンドに渡し、
別のコマンドの引数として使用することができます - git branch -D:ブランチを削除
- xargs:標準出力やファイルからリストを読み込み、任意のコマンドに引数として渡します。
これらのコマンドを「|(パイプ)」で繋ぐことで、
- gitのブランチ一覧を表示
- 削除対象ブランチを1〜複数選択
- 選択したブランチを一括削除
することができます。
便利ですね。
メモ
|(パイプ)の意味をなんとなくでしか理解していなかったので記載しておきます。
Linuxコマンドを使って標準出力された内容を次のコマンドへ橋渡しするために使われるコマンド
こちらが参考になります。
https://academy.gmocloud.com/know/20210630/12090#:~:text=%E3%83%91%E3%82%A4%E3%83%97%E3%81%A8%E3%81%AF%E3%80%81Linux%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89,%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%EF%BC%81