GitFlow 及 GitKraken - Tomorrow0w0/testGit GitHub Wiki

什麼是GitFLow ?

Git 本身具有強大的分支管理功能,要開分支可以說是成本極低的一件事情,
若是胡亂開分支,容易造成管理上的混亂,因此也有很多不同的管理方式,
GitFlow 就是其中一種很受歡迎的管理方式,以下是 GitFlow 的簡單流程圖示 :

分支類型:

  1. master 主支 穩定版 tag
  2. hotfix 緊急修改支
  3. release 發布支(上線) 測試版 tag
  4. develop 開發支
  5. feature 功能支

解說流程圖:

簡單來說,整個工作分成兩個主要分支,分別是 masterdevelop ,而其他分支則是輔助這兩個分支用的。

  1. master 是用來放置交付版本的程式,而 develop 分支則是用來放置開發中的功能。

  2. develop 分支上,依照不同的需求,再開不同的 feature 分支,
    來處理各自 feature 的開發,當 feature 開發完畢後,在合併回 develop 分支。

  3. develop 分支累積足夠的 features 後,就可以準備 release
    這時候會再從 develop 開出 release 分支,處理 release 前的工作,,
    如: 版號變更、撰寫change log 等等。

  4. release 準備完後,就可以合併到 master ,作為最終交付的版本,此時可以給予一個版本號tag

  5. 當已交付程式有 bug 發生時,可以在 master 上建立 hotfix 分支,
    進行緊急的修復,修復完成後,直接再合併回 master

  6. releasehotfix 分支的異動結果,也會同步合併回 develop 分支。

  7. 一般來說 masterdevelop 分支,都只會留有被合併的結果,
    而不會直接在這兩個分支上進行 commit

GitKraken Git GUI神器: (本文擷取至全端開發人員天梯)

⚠️ **GitHub.com Fallback** ⚠️