版本管理規範
Master:顧名思義,既然名字叫Master,那麽該分支就是主分支的意思。在git repo下主分支的職責主要就是負責記錄stable版本的叠代,當在beta版本的項目或是開發版本的項目得到了充分的驗證之後,我才能將分支並入master分支。master分支永遠是production-ready的狀態,即穩定可產品化發布的狀態。
Develop:這個分支就是我們平常開發的一個主要分支了,不管是要做新的feature還是需要做bug fix,都是從這個分支分出來做。在這個分支下主要負責記錄開發狀態下相對穩定的版本,即完成了某個feature或者修復了某個bug後的開發穩定版本。
Feature branches:這是由許多分別負責不同feature開發的分支組成的一個分支系列。new feature主要就在這個分支系列下進行開發。當我在一個大的develop的叠代之下,往往我們會把每一個叠代分成很多個功能點,並將功能點分派給不同人的人員去開發。每一個人員開發的功能點就會形成一個feature分支,當功能點開發測試完畢之後,就會合並到develop分支去。
Release branches:同樣,這也是有多個分支組成的一個分支系列。這個分支系列從develop分支出來,也就是預發分支。在預發狀態下,我們往往會進行預發環境下的測試,如果出現缺陷,那麽就在該release分支下進行修復,修復完畢測試通過後,即分別並入master分支後develop分支,隨後master分支做正常發布。
Hotfix branches:這個分支系列也就是我們常說的緊急線上修復,當線上出現bug且特別緊急的時候,就可以從master拉出分支到這裏進行修復,修復完成後分別並入master和develop分支。
版本管理規範