簡體   English   中英

Git:工作流程困境 - 重新定位到一個全新的分支?

[英]Git: Workflow Dilemma - Rebase to a totally new branch?

我們設置了一個環境,其中有 3 個自動部署的分支(Develop、Preprod、Master (Prod))。 這是一個多站點環境,有多個團隊在 repo 上工作。

我們的目標是能夠開發功能並將它們推送到 2 個主要工作流中,一個用於測試,然后另一個用於通過 preprod 分支將代碼放到生產服務器上: 1. 將更改推送到開發分支進行測試 2.推送到 preprod 分支以暫存生產環境,然后將 preprod 環境推送到生產環境。

我們的問題:我們不知道從哪個分支開始功能請求。 如果我們從開發開始,當我們合並到 Preprod(工作流程 #2)時,它會將每個提交都帶入開發中,而這些提交不一定為 Preprod 做好准備。 當我們從預生產開始功能時也是如此。

目標:理想情況下,我們希望能夠在開發時啟動分支,並將其合並到第一個工作流進行測試。 然后,一旦它准備好合並到第二個工作流中,就進行某種變基,以便分支現在從 preprod 而不是開發開始。 但是,我不認為這是可能的嗎? 根據我對 rebase 的理解,您所能做的就是將分支的起點移動到更進一步的開發分支,而不是將功能分支移動到現在從 preprod 分支而不是開發分支開始。 這可能嗎? 或者我們可以使用其他一些解決方案來實現我們團隊所忽視的相同效果嗎?

獲得正確的 git 工作流程很難。 我建議使用已經存在並記錄在案的工作流程。 這樣它更有可能在現實生活場景中工作並且不會有太多陷阱。

Atlassian 記錄了許多標准替代方案

你的概念聽起來最接近gitflow 工作流,所以你可以看看。 它包含許多分支類型:master、develop、releases、hotfixes 和 features。

就個人而言,我更喜歡功能分支工作流 它實際上比 gitflow 更簡單,因為只有 master 和 feature 分支,但是如果您有仔細的代碼審查(在拉取請求中)和具有良好覆蓋率的自動化測試,那么它的效果最好,這樣您就可以放心地合並。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM