為了完善項目部署流程,減少業務部署中故障率,特定此方案。該方案采用git分支策略,對實際項目中業務開發、部署流程進行規劃化。
分支策略
-
master
生產環境分支 -
release
預發布環境分支 -
develop
集成測試環境分支 -
fixbug
修復bug分支 -
功能分支
特定業務模塊
圖片
圖片
簡單流程
主分支只用來分布上線版本,日常開發在develop分支完成,進行集成測試,然后進入到預發布release分支進行預發布測試,測試通過后并入master。
master
默認主分支,僅有一個,分布提供給用戶使用的正式版本
develop
日常開發在這個分支進行
# 新建分支
git checkout -b develop master
# 切換到Master分支
git checkout master
# 對develop分支進行合并
git merge --no-ff develop
功能分支
功能分支,在開發新模塊或新功能時,要從develop分支分出來的,開發完,要并入develop,功能分支命令,可以采用feature-*的形式。
# 新建分支
git checkout -b feature-x develop
# 功能并入develop分支
git checkout develop
git merge --no-ff feature-x
#刪除feature分支
git branch -d feature-x
git push --set-upstream origin feature-x
release
當develop上已經包含了某個發布所需要的所有功能,并且沒有已知的嚴重問題,就可以創建該release分支,也稱預發布分支,即發布正式版之前,可以進行預發布版本測試,功能測試和代碼評測通過后,需要合并回develop和master分支。
# 創建與發布分支
git checkout -b release-1.0 develop
# 合并master分支
git checkout master
git merge --no-ff release-1.0
# 對合并生成的新節點,做一個標簽
git tag -a 1.0
# 合并到develop分支
git checkout develop
git merge --no-ff release-1.2
# 刪除預發布分支
git branch -d release-1.0
git push --set-upstream origin release-1.0
fixbug
基于主分支創建Bugfix分支修復主分支上發現的問題,修復完成并且通過代碼評審后,再合并進master和develop分支,命令規則可以采用fixbug-*形式。
# git創建一個修補bug分支
git checkout -b fixbug-1.0 master
# 修補結束后,合并到master分支
git checkout master
git merge --no-ff fixbug-1.0
git tag -a 1.0.1
# 在合并到develop分支
git checkout develop
git merge --no-ff fixbug-1.0
# 刪除 bug分支
git branch -d fixbug-1.0
git push --set-upstream origin fixbug-1.0
分支管理相關命令
創建分支
根據項目需要,基于master分支創建分支,來管理
創建分支
git branch dev
dev 為分支名切換到分支
git chectout dev
-
推送分支
git push --set-upstream origin reseles
前兩步也可以直接用一個命令:
git checkout -b dev
刪除分支
當某個分支無存在意義,不需要了,可以刪除。
- 刪除本地分支
git branch -d dev
- 刪除遠程分支
git push origin --delete dev
合并分支
在主分支中,需要將某個子分支的代碼合并進來,在當前主分支下,執行以下命令。
- 合并分支
git merge dev
- 合并分支
git merge --no-ff dev
查看所有分支
- 列出本地分支
git branch
- 列出遠程分支
git branch -r
參考:http://www.lxweimin.com/p/b33eb326d361
http://www.lxweimin.com/p/fc3b3bce5d8a?utm_campaign=maleskine...&utm_content=note&utm_medium=seo_notes&utm_source=recommendation