2017-02-17 108 views
2

我正在使用gitflow工作流程。從master開始,我創建了一個hotfix分支並做了一些修復。在合併回master之前,我想我首先會合併到develop,只是爲了看到分段中的變化,然後合併爲主。如何從提交之前的合併中創建分支?

說合並develop修復過,我通過合併發展成hotfix分支(是的,可恥的是我)解決,我才意識到我不能合併,爲master,爲開發具有不穩定的事情還在發生衝突。

如何從合併之前的提交創建分支?

PS:我合併使用git merge develop(沒有使用no-ff標誌)。

+0

你需要一個分支還是隻需要將該提交合併到master? –

+0

一個分支,因爲我們的存儲庫規則沒有直接推動掌握,總是PR。 –

回答

2

我假設你的結構看起來是這樣的:

A - B - C  <- master 
\ \ 
    \ \- F - G <- hotfix 
    \  /
    \-D - E  <- dev 

您想合併提交由F代表回master,這是目前在C

您可以創建一個單獨的分支要做到這一點,因爲你要求:

git checkout hotfix^ -b unmerged-hotfix 

在這種情況下hotfix^hotfix當前提示之前提交。新分支將被稱爲unmerged-hotfix

如果你只是想直接合併到主未做一個新的分支另一方面,你可以做

git checkout master 
git merge hotfix^ 

這將合併的hotfix尖端插入主之前提交。

+0

優秀的解釋。在我的情況下,我想要一個新的分支,因爲我們不能推到主(回購規則),所以我們總是打開一個PR。現在,假設合併'develop'後,我在'hotfix'上做了'H'和'I'提交。我將如何實現相同的結果,但**在'master'上帶**'H'和'I'? (基本上,每個提交,除了合併:'F','H','I';但沒有'G') –

+0

@ChristopherFrancisco。我會做一個互動式的底座或櫻桃選擇。這完全超出了你當前問題的範圍,所以我會繼續問另一個。如果你需要一個PR,我會基本上從這裏描述的'F'分支,然後櫻桃挑選或重新分配'H'和'I'。 –

+0

@ChristopherFrancisco或者,您可以使用擴展問題編輯帖子,作爲您想要做什麼的更詳細解釋的一部分,我會相應地擴展我的答案。鑑於你有這個問題,我不認爲這會讓它變得太寬泛或任何東西。 –

相關問題