Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2914

gitブランチを一括削除

$
0
0

目的

現在のブランチとmasterブランチ以外を一括削除したいときに使う!

git version

2.16以下

何もしない

2.16以上

git config --global pager.branch false

git 2.16版からgit branchの出力はページングされるようになったため、まず無効にする

一括削除

.bashrcに以下の内容を追加する

gbrm(){
    git branch | grep-v`git branch --show-current` | grep-v'master' | xargs git branch -d}

↑これで

  • current branch
  • master

以外のブランチを削除されます。

補足

-d, --delete
           Delete a branch. The branch must be fully merged in its upstream branch, or in HEAD if no upstream was set with --track or --set-upstream-to.

-D
           Shortcut for --delete --force.

-dはmerge済みか、upstreamを設定してないブランチしか削除されない。間違えて開発中のブランチを削除してしまうことを防げます。

関係なく、削除したい場合は、-Dをを使ってください。

使い方

FO-602:manager feng$ git branch
  current-working-branch 582c921c2 
  last-week-branch       582c921c2 
  master                 582c921c2 
* merged-branch          582c921c2 
FO-602:manager feng$ git checkout current-working-branch
Switched to branch 'current-working-branch'
FO-602:manager feng$ gbrm
Deleted branch last-week-branch (was 582c921c2).
Deleted branch merged-branch (was 582c921c2).

参照


Viewing all articles
Browse latest Browse all 2914

Trending Articles