Git flow 是一個 Git 開發分枝開發流程的建議

演化至今,各官方也陸續依照相關建議提出自家的開發流程,如 GitHub Flow、Gitlab Flow

根據 Git flow 建議,可以將分枝區分為以下幾種

master、develop、hotfix、release 及 feature

Master

存放穩定的版本,或上線版本,並且不會直接 commit 到這個分支,而是透過其他分支合併進來

Develop

負責處理開發中的專案,若有新增需求,會切換到 feature ,新增完畢仍須再切回 develop

Hotfix

線上 master 版本有緊急狀況需要處理時,可先透過 hotfix 處理,完成後再合併回 master

Release

develop 開發到成熟階段,就能合併到 release,進行上線前的測試,測試完成會合併到 master 及 develop,或者測試未過,需合併回 develop

Feature

新增功能時,會從 develop 分枝切換到 feature,當新功能製作完畢,再合併回 develop

例如: feature/user-data

整體的流程大概可以參考下圖: