關於git的一些分支管理規範。。。
一、分支與角色說明
git 分支型別
master 分支(主分支) 穩定版本
develop 分支(開發分支) 最新版本
release 分支(發布分支) 發布新版本
hotfix 分支(熱修復分支) 修復線上bug
feature 分支(特性分支) 實現新特性
gitlab 角色與專案角色對應關係
owner(擁有者) git 管理員
master(管理員) 開發主管
developer(開發者) 開發人員
reporter(報告者) 測試人員
guest(觀察者) 其他人員
二、分支簡明使用流程
1、每開發乙個新功能,建立乙個 feature 分支,多人在此分支上開發;
2、提測時,將 master 分支和需要提測的分支彙總到乙個 release 分支,發布測試環境;
3、發現bug時,在feature分支上debug後,再次回到2;
4、發布生產環境後,將 release 分支合併到 master 分支,刪除release分支;
三、建立新專案(master分支)
開發主管提交**初始版本到master 分支,並推送至gitlab系統;
開發主管在gitlab 系統中設定master 分支為protectd 分支(保護分支);
protected 分支不允許developer 角色推送**,但master 角色可以推送**;
四、進行專案開發(develop分支)
開發主管在master 分支上建立develop 分支(開發分支),並推送至gitlab系統;
master 分支與develop 分支一樣,有且僅有乙個;
對於非並行專案可以使用develop分支開發方式,對於多人並行開發專案,使用feature分支開發方式,
但develop和feature開發方式不應同時使用;
五、開發新特性(feature分支)
每個新需求或新的研究建立乙個feature 分支;
命名規範:
f-分支建立日期-新特性關鍵字,例如:f-20150508-滿立減;
推薦使用feature 分支,但feature 分支的生命週期不能跨一次迭代;
六、發布測試環境(release分支)
開發負責人需完成以下任務:
1. 確認要發布的feature 分支上的功能是否開發完畢並提交;
2. 建立release 分支(發布分支),將所有要發布的分支逐個合併到release分支,有如下情況:
①.feature分支(可能有多個)
②.master分支(期間可能有其他release版本更新到了master)
3. 命名規則:r-分支建立日期-新特性和待發布版本號,例如:r-201505081712-買立減v1.0.0,版本可根據需要新增;
4. 刪除本次發布的所有feature分支;
5. 發布到測試環境,通知測試;
七、修復待發布版本中的bug(feature分支)
如果發現bug,開發人員在feature 分支上修復測試人員提交給自己的bug,修復完成後,由負責人再次建立 release 分支,發布測試環境。
八、發布正式環境
開發負責人需完成以下任務:
1. 根據修復後的release分支再次將master合併,打包發布生產環境;
2. 確認發布成功,並線上驗收通過後,將release分支合併到master分支;
3. 在master分支上建立標籤,命名規則:tag-日期-新特性和版本號,例如:tag-201505081712-買立減v1.0.0,版本可根據需要新增,作為發版里程碑標記;
4. 刪除對應release 分支;
九、修復線上bug(hotfix分支)
線上的不同版本出現了bug怎麼辦?開發負責人需完成以下任務:
1. 從master 分支某個tag 上建立乙個hotfix 分支(熱修復分支),一般是最新的tag應該和當前生產環境對應;
命名規則:h-分支建立日期-bug名稱和待發布版本號,例如:h-201705081614-購物車點選沒反應v1.0.1;
2. 開發人員完成bug 修復,提交hotfix分支到測試環境驗收通過;
3. 再次發布正式環境流程;
4. 將hotfix 分支合併到master分支;
5. 在master分支上建立標籤,命名規則:tag-日期-新特性和版本號,例如:tag-201505081712-買立減v1.0.0,版本可根據需要新增,作為發版里程碑標記;
6. 刪除hotfix 分支;
十、git的特別注意事項
由於 git 分支是基於指標的概念,所以分支速度非常快,當多個分支時,實際指標指向的是同乙個檔案,當檔案被修改時,使用的是暫存區儲存修改,此時並未提交到相應分支。
所以切換分支的時候,暫存區只有乙個,所以切換分支之前,一定要將所有修改commit到當前分支,否則會在其他分支看到修改的內容,引起誤解。
以上規範僅供參考,具體實踐請依據團隊具體情況自行調整。。。
git分支管理規範
以下特點是有部分是假設性,部分是實際的 這裡的約束是指無論哪一種場景,以及開發規模大小都必須要遵守的一些git分支管理規則 只需要乙個master分支,然後各自建立自己的分支名為 dev 拼音簡寫 feature fixbug 名稱 如 dev zhang3 userreg,雙發約定好評審方式和me...
git分支管理規範
主分支 master 開發分支 develop 功能分支 feature 修復分支 hotfix 預發布分支 release master 主分支,建立 repository 時缺省會生成乙個 master 分支。通常情況下 master 分支是受保護的 protected master 分支儲存的...
專案Git分支管理規範
git 是乙個開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。專案中,一般會建立三個常用分支 日常開發中,一般會建立兩類分支 從develop分支切出乙個新分支,根據是功能還是bug,命名為feature 或 fixbug 開發者完成開發,提交分支到遠端倉庫。開發者發起merge請求...