1

下面是我使用VSTS和Git的合併工作流程的解決方案,如下圖所示。Git合併工作流程

這種方式有效,但看起來有2個冗餘步驟可以防止合併衝突。我希望有人可能有一個更簡單的方法來做到這一步。如果我重新分配每個分支,這將工作,但我試圖避免這種方法。我的步驟包括:

  1. 爲dev中的特徵創建一個dev分支,off master和輔助分支。
  2. 將代碼從功能分支拉入dev分支。
  3. 將主人拉入開發並解決衝突。
  4. 一旦衝突得到解決,就可以將開發人員拉到主人手中。
  5. 將主回拉到dev中,以便提交歷史記錄相同。

Git Workflow Image

+0

您不必執行第5步,因爲您只是添加空的合併提交。 – Ryan

回答

0

根據您的描述,似乎master是你的主要分支,dev是你有進一步的發展項目,feature分支是該巢功能的工作或協助,爲您制定dev分支。 因此合併流程應該是:feature分支的工作,完成

  1. 後,合併featuredevgit checkout devgit merge feature)。
  2. 完成dev分支後,將dev合併爲mastergit checkout mastergit merge dev)。

現在master分支包含dev分支的最新工作。通常沒有必要將master重新合併到dev中,因爲master是您的主要分支。

注:

  • 當有合併過程中的衝突,修改和保存所有文件衝突,然後使用git add .git commit。或者您可以使用合併策略自動解決衝突。
  • 儘管來自其他分支的git pull可能與git merge的結果相同,但我仍建議您使用git merge。它存在的命令是針對這種情況的,而且更爲經常。