今天和同事一起讨论起Git分支的使用,之前也讨论过,但是结果一直不理想,今天的讨论还算是初见成效,随即记录下。希望对读者有所帮助,也欢迎一起讨论。
场景
相信每个公司都会有很多套环境(DEV,TEST,UAT,PROD等等),也会同时很多个功能需求,功能需求有缓有急,导致上线时间也不尽相同。如果每个功能服务足够原子化,与其他的模块耦合度不高也会好点,但是如果某个项目很重很大,版本的运维成本就会成指数式上升。
解决方案
针对于以上场景就想出了两种分支类型:功能性分支(需求分支)和环境分支。怎么理解呢?
分支 | 功能 | 代码来源 |
---|---|---|
功能性分支 | 此类分支仅能提交具体业务代码 | 接收到需求时以PROD分支为基础 |
环境分支 | 此类分支代码的更新仅能通过合并分支 |
流程图
公司发展不是很好,仅一个需求开发
1.功能A分支本地开发中
2.开发完成啦,我要上DEV环境测一下