CI/CD 持續整合分支模型
阿新 • • 發佈:2018-12-21
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
參考文獻: