2017-06-29 170 views
0

原來,有主分支分支。在Git中刪除一個「基」分支

然後我從創建feature_1分支,以實現功能1

這一新分支的一些工作之後,我決定實施功能2,從功能1所以我做了決定:

$ git checkout -b feature_2 feature_1 

我做了feature_2分支的一些工作。現在

,它沒有任何意義,因爲其所有的發展都包含在feature_2分支繼續feature_1分支的發展。

它是「安全的」刪除feature_1分支即使是從我開始feature_2分支的基地? 刪除之後,我會在Git圖中看到一個單獨的feature_2分支從主分支分支開始?

我想什麼來實現上面是寫的什麼,單feature_2分支從同一點分支開始的時候,我開始feature_1分支。最後,將其重命名爲feature_1_2分支。

回答

0

務必:

# Delete branch feature_1 
git branch -d feature_1 

# Rename feature_2 -> feature_1_2 
git branch -m feature_2 feature_1_2 

如果你想確保沒有對feature_1沒有額外的工作(即提交不在feature_2),你可以做一個快進合併:

git checkout feature_1 
git merge --ff-only feature_2 

如果合併成功,則feature_1feature_2指向相同的提交。所以刪除其中一個是安全的。

+0

因此,即使** feature_2 **從它開始,刪除分支** feature_1 **是完全安全的嗎? – ABCplus

+0

是的。除非在啓動feature_2後您已完成feature_1的工作。 – gzm0

+0

不,這是一個「死衚衕」 – ABCplus