2012-06-22 108 views
33

我使用git以及git flow。這裏git流程有一個develop分支。無論何時我需要啓動我輸入的功能Git流是否刪除遠程服務器上的分支?

git flow feature start new 

新分支feature/new已創建。然後我做的修改和他們使用

git push origin feature/new 

comitting更改後提交我使用

git flow feature finish new 

刪除本地feature/new分公司完成功能。現在我切換到開發由混帳支流動我再次鍵入

git push origin develop 

其更改遠程服務器develop分支

如果鍵入git branch -a,新科得到了來自當地,但它刪除服務器上是否有名稱remotes/origin/feature/new

git flow刪除遠程服務器上的分支,這些分支在我的本地計算機上被刪除?

請告訴我,如果我做一些錯誤。

回答

29

看着source看起來,只有當您撥打git flow feature finish-F才能刪除遠程功能分支。

然而,這種獲取遠程完成功能之前。從docs

-F進行完工

否則之前,從$ ORIGIN取你可以delete the remote branch手動:

git push origin :feature/new 
14

我可以建議使用混帳流AVH版。

像斯特凡說,當你使用-F,這是有點怪原來的版本只刪除遠程分支。該AVH版修復了這個古怪的行爲,它總是會刪除本地和遠程特性分支上完成,除非您指定

  • --keep,這使本地和遠程。
  • --keeplocal,這使當地的,但刪除遙控器。
  • --keepremote,這使遙控器,但刪除本地。

您可以在github上找到git-flow AVH Edition。

+0

AVH版會更好地處理'''功能拉「嗎?我只是設置了一個賞金,因爲在原來的git-flow中'''pull'功能非常混亂(http://stackoverflow.com/questions/18412750/why-doesnt-git-flow-feature-pull-track ),感謝任何輸入有一個cannonical答案。 – dashesy

+0

功能拉動命令將在每個版本2.0中棄用,並且只有功能軌道可用。 –

+0

有沒有一種方法可以在刪除特徵分支HEAD之前自動標記它的位置?我喜歡看到git-web中的綠色標籤,但是當遠程被刪除時,這些標籤就會消失。 – avatarofhope2

2

我不得不這樣做:如果有新特性分支內的變化

git flow feature delete -f name_feature 

的-f是必要的。

git push origin --delete feature/name_feature 

也就是說也要刪除遠程分支。