69
66

More than 5 years have passed since last update.

Gitで既にmasterにマージされている使用済みブランチを消す方法

Last updated at Posted at 2013-02-20

ブランチいっぱい作っているとどれがマージ済みで削除していいかわからなくなったりしますよね。そんな時のためのTipsです。

使用済みブランチの削除関係Tips

リモートリポジトリ名をoriginとする。

  • ローカルのマージ済みブランチを(currentとmaster以外)消す

(現在のブランチにマージ済みなものを消すので通常git checkout master後に使う)

git branch -d $(git branch --merged | grep -v master | grep -v '*')
  • リモートのマージ済みブランチを消す
git push origin $(git branch -r --merged | grep origin/ | grep -v master | sed s~origin/~:~)
  • リモートで消されたブランチをローカルに反映
git remote prune origin
  • fetchする時についでに反映(-p--prune)
git fetch -p origin

合わせ技

ローカルのmasterをリモートのマスターに同期するのと同時に、既にmasterにマージされたブランチをローカル、リモート共に消す。
自分はmasterを同期させたいタイミングではいつもこのコマンドを使っています。

git checkout master && git pull origin master && git fetch -p origin && git branch -d $(git branch --merged | grep -v master | grep -v '*') && git push origin $(git branch -r --merged | grep origin/ | grep -v master | sed s~origin/~:~)
69
66
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
69
66