2012-06-22 4 views
4

Я хотел бы создать команду git, которая удалит любые ветви, все из которых будут включены в текущую ветвь, например.git cleanup старые ветви

$ git branch 
    groups 
* master 

$ git cleanup-branches 
deleted groups # all commits are included in master 

$ git branch 
* master 

Как я могу это создать?

+0

Поиск ответвлений здесь: http://stackoverflow.com/questions/226976/how-can-i-know-in-git-if-a-branch-has-been-already-merged-into- хозяин –

ответ

4

Вы можете использовать git branch -d здесь, так как он не будет удалять любой филиал еще не объединены в текущей ветке:

git config --global alias.cleanup-branches \ 
'!git branch | grep -v "\*" | awk "{ print $1 }" | xargs git branch -d' 

Просто попытался это локально, и она работала, хотя это немного страшно смотреть Работа.

+0

ha! да, это один из способов сделать это, попытаться удалить все! Сказав, что это действительно надежный способ сделать это. – opsb

Смежные вопросы