当前位置: 首页 > news >正文

驻马店360网站建设多用户商城系统哪个公司的好

驻马店360网站建设,多用户商城系统哪个公司的好,网站浮标怎么做,网站域名在哪里查询背景 在工作的过程中,git管理方式已经成为每一个项目开发的基础,每个项目的开发都离不开git管理方式。 但是在使用的过程中,由于对git分支管理方案的了解不深,导致会出现分支管理不明确的情况。 本文主要是做科普作用&#xff…

背景

在工作的过程中,git管理方式已经成为每一个项目开发的基础,每个项目的开发都离不开git管理方式。

但是在使用的过程中,由于对git分支管理方案的了解不深,导致会出现分支管理不明确的情况。

本文主要是做科普作用,看看主流的分支管理方式以及分析目前DumuTools上分析管理方式的不合理之处。

基础知识概述

在Git分支管理中,主要可以分为以下两类分支:

  • 主要分支

    • master(主分支)

    • develop(开发功能分支)

  • 支线分支

    • feature branch (功能分支)

    • release branch (预发布分支)

    • hotfix branch (热修复分支)

在开发的过程中,master分支就类似于一棵树的主干,而其他分支就是在这棵树上的主干所分出来的分支:

 

流程图

为什么需要一个合理的分支管理方案,我们可以举个例子来进行论证。

分支管理的Bad Case

情景再现:

首先,PM发来需求,有个项目要开始了,版本号为V1.0。

此时我们开开心心收到需求后,开始切分支进行开发:

经过老老实实的开发,测试,我们的在绿色节点的位置完成了项目的开发,目前一切顺利。

此时,PM发来了新的需求,我们需要开始做V2.0了。

收到需求后,我们又认认真真、老老实实的在V1.0的基础上,拉出来了分支,开始了开发:

在顺利的开发、测试过后,我们也顺利的把V2.0给Release出来了,目前看来还是一切顺利。

接下来我们在PM的安排下,开始了V3.0的开发,还是老样子,拉分支开始开发:

在开发的V3.0过程中,PM传来消息:V1.0当中出现严重bug,需要修复,此时我们转向修复bug,在V1.0的基础上,拉出来BugFix分支,开始修复bug:

 

经过华丽的操作之后,我们完成了bug的修复,并且发布了V1.0的bug修复版本,此时我们发现bug的修复需要合并到其他的分支上,因此我们就需要:

通知所有的开发同学,把V1.0的最新commit合并一下,确保版本稳定。

然后大家就开始合并代码。

最后我们顺利的将改动全部合并到有影响的分支上,然后开始V3.0的开发。

 

经过开发,我们此时终于完成了V3.0的released发布,然后我们又开始了V4.0的开发:

此时又又传来消息,V2.0出现BUG,需要修复!然后我们又开始了V2.0的修复:

 

修复完毕后,我们又要告知其他同学:

通知所有的开发同学,把V2.0的最新commit合并一下,确保版本稳定。

一些敏锐的同学可能很快就能注意到,此时问题就出现了:

  1. 在此分支管理方案中,没有一个明显的、稳定的版本分支存在,每次开发同学在开发时需要时刻关注其他分支的稳定情况,若对自己的分支有影响,需要合并相关分支的代码。

  2. 若出现多个分支出现问题,需要每一个被影响的分支,合并所有的修改过的代码到自己的分支上,随着项目的进行,这种合并分支的代价会变得非常大

  3. 在开发过程中,若忘记合并某一分支的bug fix,非常容易导致不可预期的问题出现。

很明显在该种方案下,我们很难去确认哪一个分支的哪一个版本是最新的、稳定的版本

借此例子,我们来看看比较规范的分支管理方案是怎么样的。

规范的分支管理方案:

规范的分支管理方案如图:

 

在一个规范的分支管理方案中,有几个主要分支:

  1. Master分支:用来保存稳定的,已经released的版本代码

  2. Develop分支:用于开发,保存了开发过程中最新的代码

  3. Feature分支:用来分功能开发,开发完成后将代码合并到Develop分支

  4. hotfix分支:用来做Bug修复的分支

首先,在这种分支的管理下,我们上面的情景就会变成以下的开发形式:

情景再现:

PM告知开始开发V1.0版本:

 

(这里我们简化了Feature分支)

在开发完成后,我们将已经Released的代码、稳定的代码,合并到了Master分支。

然后开始了V2.0的开发:

 

同样的,我们开始了V3.0的开发:

 

PM也同样的告诉我们,V1.0版本有错误,请紧急修复!

我们就一样在Master的V1.0的基础上,拉出来fix分支,进行bug fix :

 

在Bug Fix完毕后,我们就把修复后的代码commit到Master上,确保Master上代码是最新的稳定的,然后我们就可以告知各位:

通知所有的开发同学,把Master的最新commit合并一下,确保版本稳定。

这样子的话能够带来几个好处:

  1. 避免了大家每次合并代码时,都需要去了解具体的,有修改的分支代码,只要check在Master上的分支代码有何差异即可

  2. 以Master作为最新的最稳定的版本基准,其他同事参与项目的时候,只要拉master的最新代码即可开始开发,无需再次确认最新的稳定代码在哪个分支,减少沟通成本。

  3. 每次想同步代码只需要关注Master代码即可,减少信息差。

以上标准的分支管理模式在人越多的时候越能够体现它的优点。

最后

分支管理方案只是一个约定俗成的观念,并没有绝对的对错之分。

当然能用比较适合的分支管理方案,那自然是再好不过。

http://www.yayakq.cn/news/6900/

相关文章:

  • 徐州网站可用的ftp网站
  • 商城网站制作公司地址网站开发项目视频教程
  • asp.net2.0网站开发全程解析 pdf做网站厦门
  • 商城网站源码免费做网站要学什么东西
  • 企业录太原seo网站排名
  • 网站开发搜索功能做公司网站需要多
  • 高碑店市建设局网站wordpress标签管理系统
  • 建设银行忘记密码网站首页建公司网站要提供哪些素材
  • 网站如何做促销活动dw个人网站设计
  • 网站和数据库专注wordpress主题
  • 搭建网站多少时间深圳市建设工程交易服务中心宝安分中心
  • 山东建站管理系统苏州园区租房
  • 杭州网站开发制作公司贵阳网页设计
  • 怎么自己制作一个网站下载器wordpress svg
  • 官网做有下拉列表的网站的图片网站建设的总体需求
  • 建设部网站监理工程师网页制作英文
  • 将网站源码下载下来如何使用网页设计软件列表html代码
  • ae如何做视频模板下载网站360的网站排名怎么做
  • 网站下载的视频怎么变成本地视频做的好的地方网站
  • 陕西泰烜建设集团网站注册公司在哪个网站注册
  • 海口的网站建设wordpress留言簿
  • 网络公司怎么优化网站个体工商营业执照注册查询
  • 企业门户网站建设情况软件平台开发流程
  • 怎么样做个网站网站建设技术课程设计
  • 适合医药公司做网站的图片小说小程序搭建
  • 有个新网站能提供国外网站兼职做效果图
  • 做网站和c 哪个好wifi已连接(无法上网)
  • 撰写网站规划书网站有几种类型
  • 汽车做网站会小二也是做会议网站的
  • 南宁网站搜索引擎优化搭建网站教学