LoginSignup
9
4

More than 5 years have passed since last update.

Gitのマージ済のブランチを削除

Posted at

はじめに

https://news.ycombinator.com/item?id=11532281
を見ていて確かにgithub上のmerge済のブランチのdeleteって忘れるよなぁーと思いつつ、作業用のlocalマシン(mac)のがほぼ放置となってブランチが多数あることに気づいた

なので作業用マシンにあるマージ済のブランチを削除するTipsにする

前提

環境

  • Mac OS X El Capitan
  • git version 1.8.4
  • 本流のブランチを masterとする

コマンド

いきなりはちょっと怖いのでdry run的に試す

git branch --merged | grep -v master | grep -v '*' | xargs -I % echo %
  • --mergedオプションを使う。masterにマージ済のブランチを取得
  • grep -v でカレントブランチとmasterブランチを除外
  • 結果をecho

本番

git branch --merged | grep -v master | grep -v '*' | xargs -I % git branch -d %
  • ドライランのechoの部分をgit branch -dに置き換えて実行するとマージ済の不要なブランチが削除される

ちょっと使いやすく

  • 上記のコマンドは覚えるのはつらいのでalias設定をする
.git/config
[alias]
    delete-merged-branch = !git branch --merged | grep -v master | grep -v '*' | xargs -I % git branch -d %

これでgit delete-merged-branchで実行できる

9
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4