您好,登錄后才能下訂單哦!
這篇文章主要介紹“Git分支管理規范的方法是什么”,在日常操作中,相信很多人在Git分支管理規范的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Git分支管理規范的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
master:主分支,不允許開發者推送代碼,只有一個
develop:開發分支,也只有一個
feature:新功能分支,在develop分支上創建,用于開發新功能,若存在多個新特性可以并行開發,則開發主管可創建多個feature 分支(特性分支),命名規范:feature-分支創建日期-新特性關鍵字,例如:feature-20200911-i18n
release:準備發布新版本時的發布分支。開發完畢,則創建 release 分支(發布分支),命名規則:release-分支創建日期-待發布版本號。例如:release-20200911-v1.0.0
hotfix:熱修復分支,用于線上修復bug,從master分支創建。命名規則:hotfix-分支創建日期-待發布版本號,例如:hotfix-20200911-v1.0.1
分支 | 用途 |
---|---|
master 分支(主分支) | 穩定版本 |
develop 分支(開發分支) | 最新版本 |
release 分支(發布分支) | 發布新版本 |
hotfix 分支(熱修復分支) | 修復線上 Bug |
feature 分支(特性分支) | 實現新特性 |
開發人員在 develop 分支上實現新功能,包括:新特性與 新特性的Bug 修復
命令示例:
# 切換到 develop 分支: git checkout develop # 提交本地修改: git add -A git commit –m “提交日志” # 推送 develop 分支: git push origin develop
存在多個新特性可以并行開發,則開發主管可創建一個或多個 feature 分支(特性分支),命名規范:feature-分支創建日期-新特性關鍵字,例如:feature-20200911-i18n。
當新特性開發完畢后,開發主管需將 feature 分支合并到 develop 分支,最后需刪除 feature 分支。
# 從 develop 分支上創建 feature 分支: git checkout –b feature-20200911-i18n develop # 合并 feature 分支到 develop 分支: git checkout develop git merge --no-ff feature # 刪除本地 feature 分支: git branch –d feature-20200911-i18n # 刪除遠程 feature 分支: git push origin :feature-20200911-i18n
開發一個獨立的新特性(完成時,需合并到 develop 分支)
技術研究與嘗試(若失敗,可隨時刪除 feature 分支)
提前實現下一個版本需要開發的特性(可不在本次迭代中發布)
推薦使用 feature 分支,但 feature 分支的生命周期不能跨一次迭代
發布新版本的前提:
確認 develop 分支上的功能是否開發完畢
若開發完畢,則創建 release 分支(發布分支),命名規則:release-分支創建日期-待發布版本號,例如:release-20200911-v1.0.0
首先在 release 分支中升級 Maven 版本號,例如:1.0.0-SNAPSHOT,然后修改 version.ini 文件(便于在部署時查看當前版本號),最后在 release 分支上做一次提交
通知測試可對 release 分支進行測試
# 從 develop 分支上創建 release 分支: git checkout –b release-20200911-v1.0.0 develop
開發人員在 release 分支上修復測試人員提交給自己的 Bug
# 切換到 release 分支: git checkout release-20200911-v1.0.0 # 提交本地修改: git add . git commit –m “提交日志” # 推送 release 分支: git push origin release-20200911-v1.0.0
第一步:集成測試
測試需完成以下任務:
從 release 分支上檢出所有代碼并搭建集成測試環境
安排測試人員,對 release 分支進行集成測試
通知開發主管當前版本已集成測試完畢
第二步:冒煙測試
開發主管需完成以下任務:
將 release 分支同時合并到 master 分支與 develop 分支
通知測試主管,對 master 分支進行冒煙測試
第三步:發布新版本
開發主管需完成以下任務:
修改 master 分支上的 Maven 快照版為發布版(去掉 SNAPSHOT 后綴)
添加發布日志(RELEASE.md)
在 master 分支上創建標簽,命名規則:tag-日期-版本,例如:tag-20200911-v1.0.0
刪除 release 分支
打包并上傳 Maven 私服
# 合并 release 分支到 master 分支: git checkout master git merge --no-ff release-20200911-v1.0.0 # 合并 release 分支到 develop 分支: git checkout develop git merge --no-ff release-20200911-v1.0.0 # 在 master 分支上創建標簽: git tag tag-20200911-v1.0.0 # 刪除本地 release 分支: git branch –d release-20200911-v1.0.0 # 刪除遠程 release 分支: git push origin :release-20200911-v1.0.0
第一步:創建 hotfix 分支 開發主管需完成以下任務:
從 master 分支某個 tag 上創建一個 hotfix 分支(熱修復分支),命名規則:hotfix-分支創建日期-待發布版本號,例如:hotfix-20200911-v1.0.1
首先在 hotfix 分支中升級 Maven 版本號(例如:1.0.1-SNAPSHOT),然后修改 version.ini 文件,最后在hotfix 分支上做一次提交
指導開發人員完成 Bug 修復
通知測試對 hotfix 分支進行測試
# 從某個標簽上創建 hotfix 分支: git branch hotfix-20200911-v1.0.1 tag-20190919-v1.0.0
Bug修復測試通過后:
將 hotfix 分支同時合并到 master 與 develop 分支
通知測試進行冒煙測試
修改 master 分支上的 Maven 快照版為發布版(去掉 SNAPSHOT 后綴)
添加發布日志(RELEASE.md)
在 master 分支上創建標簽
刪除 hotfix 分支
打包并上傳 Maven 私服
# 合并 hotfix 分支到 master 分支: git checkout master git merge --no-ff hotfix-20200911-v1.0.1 # 合并 hotfix 分支到 develop 分支: git checkout develop git merge --no-ff hotfix-20200911-v1.0.1 # 在 master 分支上創建標簽: git checkout master git tag tag-20200911-v1.0.1 # 刪除本地 hotfix 分支: git branch –d hotfix-20200911-v1.0.1 # 刪除遠程 hotfix 分支: git push origin :hotfix-20200911-v1.0.1
比如:現在 master 分支已經發布了 2.0.0 版本(代碼結構發生了很大的變化),但線上發現了一個 1.0.0 版 本的 Bug,當修改了 Bug后,是無法再合并到 master 與 develop 分支的,開發需完成以下任務:
直接在 hotfix 分支上創建標簽
刪除 hotfix 分支(分支刪除了,只要標簽還在,版本就可以找得回來)
手工修改 develop 分支中的代碼(在后續發布時再合并到 master 分支中)
當需要對某項目進行定制化時,可從源項目的 Git 倉庫 fork 出一個新的 Git 倉庫:
當 fork 后,對 repo1 做出的任何修改,都不會影響到 repo2
在 repo2 中修復了 Bug,可通過 Merge Request 的方式提交給 repo1
在 repo2 中可隨時拉取 repo1 中的提交,但 repo1 不能拉取 repo2 中的提交
到此,關于“Git分支管理規范的方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。