大家在项目过程中是否会经常发生以下问题:
1、测试人员在测试阶段更新测试环境时,发现编译不通过,或者应用出现异常,无法进行测试。后来发现的根源是测试和开发共用一个分支。
2、有一天某个人群发了一条邮件通知,“我们的项目代码已经发到主干,这段时间大家不要修改主干信息”,这样影响其他项目的正常发布。
3、项目进行了比较长的时间,等最后发布,需要与主干进行合并的时候,出现大量的冲突,几乎没法处理。而且冲突处理完后我们还需要重新再做测试,以保证我们的冲突处理没有问题,这样又会需要花费大量的时间。
版本控制流程目标:
1、保证各个环境(开发、测试、主干)的独立,避免相互影响。
2、减少最终发布时合并主干出现冲突的概率。
3、降低冲突处理的难度。
原则:
多个版本(开发版本,测试版本,发布版本);多次合并。
流程:
1、项目开发编码前从当前主干建立一条开发分支,供项目开发人员使用;
2、开发结束,提交测试的时候,从当前主干建立一条测试分支,将开发分支合并到测试分支上,供测试人员进行测试。这样开发人员对开发分支的修改不会影响测试环境;
3、bug fix的时候我们定时将开发分支的修改合并到测试环境中。
3、回归测试的时候,从当前主干建议一条发布分支,将测试分支合并到该发布分支上,在发布分支上进行回归测试。
4、发布前,将发布分支合并到当前主干。
好处:
1、多个版本相互独立,互不影响
2、通过多次与主干的合并,这样发布时候和主干做最后一次合并的冲突会大大减少,并且在与主干多次合并过程中的冲突解决都在测试阶段中得到了测试。
建议:
如果项目的周期比较长,和主干进行合并的次数也应该加大,以降低处理冲突的难度。
分享到:
相关推荐
2. 项目管理:JIRA 可以应用于任何类型的项目管理,帮助项目经理更好地管理和跟踪项目 3. 问题跟踪:JIRA 可以应用于问题跟踪,帮助用户更好地跟踪和解决问题 JIRA 是一个功能强大且灵活的项目管理和问题跟踪工具,...
Web项目开发流程及规范是确保高效协作和高质量产出的关键。在Web开发中,由于其分布式和交互性的特性,遵循统一的开发流程和标准至关重要。以下将详细解释这些方面: 一、项目角色划分 项目通常包括三个核心角色:...
- **读者对象**:主要面向系统架构师、IT项目经理、系统管理员以及对政务外网数据传输感兴趣的人员。 - **术语**:手册中可能涉及的专业术语,如“政务外网”、“数据传输”、“基础支撑软件”等,需要读者具备...
这部分会详细说明QESuite Web Version中的不同用户角色和权限设置,如管理员、项目经理、测试工程师、开发人员等,以及他们各自能执行的操作。这有助于确保团队成员根据职责和工作流程进行有效的信息管理和任务分配...
- **程序员**:文本编辑器(如Sublime Text、Visual Studio Code)、IDE(如IntelliJ IDEA、Eclipse)、版本控制系统(如Git)。 - **跨平台兼容性测试**:Selenium、BrowserStack等工具用于模拟不同浏览器和设备...
Web项目开发流程及规范是确保高效协作和高质量产出的关键因素。在Web开发中,由于其分布式和交互性的特性,遵循一套标准的开发流程和规范至关重要。以下是对这些知识点的详细阐述: 1. **项目角色划分**: - **...
《Trac项目管理使用手册》提供了详尽的指导,帮助项目经理有效地利用Trac工具进行项目管理。Trac是一个集成Wiki和问题跟踪管理系统的开源软件,旨在简化软件开发项目的管理,同时尊重并适应现有的开发流程。它由...
总的来说,Future1.0作为一款全面的Web项目管理平台,通过集成化的设计,简化了复杂的项目管理流程,提高了团队协作的效率,为企业提供了有力的项目管理支持。用户只需熟悉手册中的各项功能和操作,便能充分利用这个...
该计划书由G组成员于2020年4月2日编写,旨在规划并管理项目的整体流程,确保项目能够顺利进行并达成预期目标。 **1. 引言** 引言部分主要阐述项目的起因和基本概念,包括: 1.1 背景 项目背景可能涉及当前艺术创作...
禅道是一款基于Web的项目管理工具,旨在帮助项目团队更好地管理项目、跟踪进度、协调团队成员之间的工作。禅道提供了一个统一的平台,帮助团队成员之间更好地协作、沟通和分享信息。 1.1 软件介绍 禅道是一款基于...
这份手册是项目经理的推荐资源,并且向下兼容至5.21以下版本。文档内容涉及Activiti引擎的配置、部署、使用及集成等方面。以下将从手册中提取出的知识点进行详细说明: 1. 安装与配置: - 必须安装JDK 6+版本以...
- **Redmine**是一款开源的、基于Web的项目管理和缺陷追踪工具,适用于多种类型的项目,支持多项目管理。 - **适用人群**: 项目经理、软件开发团队、技术支持团队等。 #### 二、项目管理 - **项目列表**: 默认显示...
项目经理在整个过程中需密切关注项目进度,通过项目进度表(工作日志)来跟踪和控制工作进度。 技术规则方面,数据库命名约定是一个重要的规范。遵循匈牙利命名法,数据库名以[db]_开头,表名以[tab]_开始,字段名...
【Web开发流程】是关于如何有序、高效地进行Web项目开发的一种系统方法。Web开发的特点在于其分散性和交互性,因此需要遵循特定的开发规范和技术约定,以确保团队协作和项目质量。 首先,**项目的角色划分**至关...
- **管理方式**: 项目经理负责计划和实施。 - **支持与指导**: 软件工程创新实验室提供技术支持与指导。 #### 五、总结 本实训生培养方案旨在帮助学员掌握Java Web开发的核心技能,包括面向对象编程基础、数据结构...
Visual Studio 2010 (VS2010) 和 Team Foundation Server (TFS) 是微软提供的一套强大的软件开发协作工具,用于版本控制、项目管理、测试和构建流程。TFS为开发团队提供了集成的解决方案,使得不同角色的团队成员如...
本项目的目的是设计并实现一个基于Scrapy的Web应用程序,用户通过WebUI可以轻松创建、编辑、运行和管理Scrapy爬虫项目,实现数据抓取流程的可视化和直观化。 2.2 **产品目标与应交付成果** - **WebUI界面**: 提供一...