CI CD 持續整合分支模型

2021-09-04 11:23:22 字數 684 閱讀 4676

ci/cd 

持續整合分支模型

1. git flow

優勢:1)隔離性好,所有功能都有對應分支,開發和測試工作互相不干擾,發布程序不受其他未開發功能干擾

2)分支職責明確 對應分支做對應的事情

缺點:1)整合週期過長,同時又大功能在各自分支上開發,每個功能開發周期都不短 功能分支間的合併與整合十分痛苦 《持續整合》這一本書中觀點來看,這甚至算不上持續整合。

2)會存在重複測試,特性測試結束後需要在主分支重複測試一遍

3)結構相對複雜,分支較多 且存在層級關係  develop-》feature-》story-1

2.github flow

優勢:1)結構相對簡單 所有功能開發都以故事卡為單位部圍繞一條主分支 

2)符合小步提交、持續整合思想 

缺點:1)分支切換的引入和測試 為了不讓某些沒有完成的功能影響已經完成的功能發布程序 

,軟體設計的初期以及後期測試都需要把對應分支切換加入 ,

需要確保在各個環境中哪些沒有完成的功能應該處於disable狀態

,增加 一部分工作量,帶來風險,需要計畫分析合理,才能減少風險發生機率

2)隔離性差 引入分支切換時為了彌補隔離性的缺失 如果期望所有分支終究需要合併到乙個分支、發布成乙個產品此缺點並不重要

最後安利一款git 提交格式化工具 git commit message

持續整合分支模型資料收集

對於常見的git型別的 庫而言,有兩種主流的託管平台,一種是gerrit,另一種是類github的工作流程 包括bitbucket,gitlab 對於gerrit的模式來說,小團隊 20人以內的 可以直接在master上提交 比如martin flower一開始說的每天在mailine上提交 ger...

CICD 持續整合與持續交付

持續整合與持續交付是軟體開發和交付中的實踐。我們專案中一直在踐行持續整合 ci continuous integration 持續交付 cd continuous delivery 未能達到理想狀態,只能實踐一部分。這篇文章用於總結ci cd的實踐。什麼是持續整合?軟體開發中,整合是乙個很可能發生未...

CI CD持續整合 持續部署 敏捷開發

持續整合 continuous integration 是一種軟體開發實踐,即團隊開發成員經常整合它們的工作,通過每個成員每天至少整合一次,也就意味著每天可能會發生多次整合。每次整合都通過自動化的構建 包括編譯,發布,自動化測試 來驗證,從而盡早地發現整合錯誤。持續部署 continuous dep...