相信大家一直都在困惑,我们日常工作是如何进行代码开发工作的,以及我们的代码是如何部署到线上服务器的,其实这里有一个很重要的点,也是很多人都会忽略的点,那就是分支开发模式,分支开发模式一共分为三种,分别是:主干开发,主干发布;主干开发,分支发布;分支开发,主干发布。下面我就给大家讲解一下这三种开发模式的具体是怎么做的,他们的优缺点是啥,以及适合的场景和团队
主干进行开发,主干进行发布,需要频繁的向主干进行提交代码,最少一天提交一次
优点:分支管理简单,合并代码冲突少,开发周期短
缺点:学习成本高,对团队要求严格,容易污染主分支,阻塞发版
适合团队:对代码质量要求高,需要有完善的自动化测试平台;高标准的代码评审机制;一般都是基础建设齐全的大公司,比如(google,腾讯)
优点:合并代码冲突少,开发周期短,主干分支不用担心污染问题
缺点:学习成本高,对团队要求严格,存在多个发布分支并行,不容易维护线上代码
适合团队:可能更适合ToB领域的业务,因为ToB领域的业务需要针对企业做定制化配置
存在两种模式,分别是:特性分支开发模式和团队分支开发模式
特性分支开发模式指的是,每个人拉出自己需求的分支,独立开发,当进行测试或者上线的时候合并到测试分支和主干分支
团队分支开发模式指的是,一次需求,一个团队拉出一个分支,大家一起开发,当需要测试或者上线的时候合并到测试分支和主干分支
优点:适合新人,学习成本低,分支之间相互独立,不会污染主干
缺点:分支管理麻烦,合并代码冲突会增加,开发周期长
适合团队:中小型公司,基础建设不完善的公司
经过前面对三种开发模式的分析,可以得到以下结论
主干开发、主干发布 更适合基础设施完善的大型公司
主干开发、分支发布 更适合ToB领域的公司
分支开发、主干发布 是一种最广泛的应用,适合各个公司,对新人比较友好