2016-11-16 37 views
1

我很高興能夠找到關於我的quastion的全面答案。這裏是:團隊中Gitflow發佈分支的限制

在我的團隊中,我們使用gitflow作爲開發和發佈項目的工作流程。現在我們對gitflow有一個概念性的問題。

當我們決定發佈時,我們推動我們的工作發佈分支,QA和客戶測試代碼並響應一組錯誤或更改當前功能的請求(沒有像gitflow建議的新功能)。

問題是,當我們想修復錯誤時,因爲我們需要像團隊一樣工作,很多人應該在同一個發行版分支上工作。因此,無論我們是通過努力工作還是面臨衝突問題,還是我們必須工作相應的工作效率都不高。

我們的想法是在發佈和並行處理這些分支上創建新分支,但我們仍然認爲這不是實現這一目標的最佳方法。

讓團隊在發佈分支上平行工作以修復錯誤的最佳方式是什麼?

回答

0

這裏顯然沒有對或錯,但我建議你讓QA &客戶獨立測試功能分支。這樣每個測試會話的範圍就會小得多並且更容易處理,並且您可以解決任何問題而不會與其他分支發生衝突。一旦您的分支已經過測試和修復,您可以將其移至發佈分支。

+0

感謝Emil的回答。你完全正確,沒有錯誤或正確。我們現在正在努力定製工作流程,以使其適合我們的團隊。也許最好在功能分支上進行QA測試,這樣可以減少將來可能出現的錯誤。 – Jameel

0

這可能不是你正在尋找的答案,但對我來說,git流程方法的一個重要部分是,所有分支和合並(通過某種審查過程/拉請求)

由於這個原因,我肯定會推薦你分支你的發佈分支併合並回去。從不分支的一個顯而易見的問題是,如果沒有人執行讀取和檢查,您沒有執行審查(如拉取請求)的步驟,此時提交已經在您的發佈分支中(壞!)。此外,你可以有兩個人提交併推送一次,等等等等

說了這麼多,我知道這可能不是與git的流動過程完全貼合在特性和錯誤修正從developdevelop支,發佈和來自master的修補程序,但您還應該記住,git流程實際上只是一個概念,指導和適應的思維模式。命令行工具只是爲了幫助你。

例如,在我目前的工作中,我們開始嘗試在純度上使用git flow(並且我們與你有類似的聲音場景),並發現我們最終使用了這些概念,但是在GitHub中管理自己的分支和合並拉取請求而不是您的標準git flow feature finish類型方案。我們這樣做的主要原因是,以避免多位開發人員同時完成並推出一項功能

我希望這可以幫助你。

+0

感謝羅比你的回答。實際上,我們採用與您的團隊相同的方法,因爲我們從來沒有使用gitflow,因爲它不符合我們的內部政策,例如100%。沒有人允許推動開發團隊中的一個人實際上允許在檢查和測試PR後批准公關開發。這導致我們在發佈分支上出現問題,因爲我們每個項目每週會變成30-40個bug並更改請求。所以發佈經理沒有時間來測試所有這些公關並批准它。我可以問,誰在批准你的團隊中的公關? – Jameel

+0

我們都贊成對方的拉動要求,誰的時間確實有限 –

+0

因此,也許我們必須考慮改進我們的內部政策並開始使其更加靈活。 :) – Jameel