2012-06-22 101 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

哈!是的,這是一種方法來做到這一點,嘗試刪除一切!說了這似乎是一個可靠的方法來做到這一點。 – opsb