概述

这是产品研发管理系列文章的第二篇:使用SubVersion进行代码管理。
介绍如何使用SubVersion的资料已经许多,这里不准备介绍如何使用SubVersion。

这篇文章主要介绍如何进行代码版本号管理。

使用SubVersion进行代码管理

  • 时间区间(1)

    • (1)的起始时间是3.0开发的開始。
    • 在(1)期间。没有不论什么用户使用3.0(由于它还没有公布)。所以全部开发者直接在3.0Trunk上开发。
    • (1)的结束时间是3.0开发的结束时间。结束时公布3.0产品,在SVN上创建3.0 Tag。同一时候创建3.1 F000 Branch。这时3.0 Trunk自己主动变成3.1 Trunk。
  • 时间区间(2)
    • (2)的起始时间是3.1开发的開始。
    • 在(2)期间,由于開始实用户安装使用3.0,所以3.1全部开发者的开发工作在3.1 F000 Branch上进行。
    • 假设在(2)期间,用户报告3.0的Bug。而且须要立即修复。那么:
      • 在3.1 Trunk上对问题进行修复,而且公布补丁包。
      • 将此修改合并到3.1 F000 Branch上。
    • (2)的结束时间是3.1 F000开发的结束时间。

      结束时公布3.1 F000产品。此时做下面事情:

      • 合并代码之前,在3.1 Trunk上建立Tag。如:3.0 20150601。用来表示将3.1 F000合并进来之前的代码。
      • 将3.1 F000 Branch的代码合并到3.1 Trunk上。而且锁定3.1 F000代码避免不论什么进一步的修改。
      • 从3.1 Trunk上创建3.1 M010 Branch。用于进行3.1 M010的开发。
  • 时间区间(3)。(4),(5)和(6)
    • 基本和时间区间(2)一样。
    • (5)是3.2的開始。

注:
1. (5)是3.2的開始。它和(3),(4)的操作方式没有根本的差别,但有些细小的区分,主要是安排不同类型的修改。
一般我们把相对大的功能/修改放到一个新的版本号里边。(3)和(4)作为(2)的升级,主要负责修复3.1的Bug和小功能的改进。把相对大一点的功能或者相对底层的修改放在3.2里边,也就是(5)里边。
2. 究竟有多少个M0X0,由产品经理依据用户反馈的问题和待开发的需求列表决定。

3. 在一个迭代周期開始前,需求都搜集到位。我们使用的迭代周期是2个月。包含需求讨论、设计开发、測试。

注意事项

依据我们使用下来的情况。有下面注意事项:

  • 假设修复Bug。能够在Trunk或者Branch上做,可是一定要使用SubVersion的合并功能,而不是在Trunk和Branch上分别改两遍。假设改两遍。造成的结果是在要将Branch合并到Trunk上出现冲突。
  • 不是不论什么时候都适合进行不论什么类型的修改。

    比方有些核心数据结构的变动,将它放在小版本号升级后的第一个迭代进行。这样的大的修改得找时机,避免对用户造成升级困难。或者用户须要又一次装载全部数据。

  • 在迭代开发结束是在Branch上做公布的;可是维护是将Branch的代码合并到Trunk后,在Trunk上维护。合并代码的时候须要很小心。保证Branch上的代码和合并以后Trunk的代码一样很关键。假设不一样会造成这样的情况:第一个从Branch上公布的产品没有问题;后来为了修复一个Bug,从Trunk上公布一个补丁包后。出现了第一个公布没有出现的问题。

产品研发管理(二):使用SubVersion进行代码管理相关推荐

  1. Android产品研发(二十一)--Android中的UI优化

    转载请标明出处:一片枫叶的专栏 上一篇文章中我们讲解了Android产品研发过程中的代码Review.通过代码Review能够提高产品质量,增强团队成员之间的沟通,提高开发效率,所以良好的产品开发迭代 ...

  2. Android产品研发(二十)--代码Review

    转载请标明出处:一片枫叶的专栏 上一篇文章中我们讲解了如何在Android studio中进行单元测试.实际开发过程中有一些功能性的需求,比如测试工具类,测试数据存储等测试工作,如果还是通过重复执行a ...

  3. 代码管理_阿里巴巴自研代码管理平台技术解密

    [以下为分享实录,有删节]阿里巴巴为什么要自研代码管理平台 也许你会问:为什么阿里巴巴要重新做一套代码管理平台,继续用GitLab版本不是挺好的吗?接下来从我个人的角度在这里尝试进行解答. 由于历史原 ...

  4. 你等的最新版代码管理它来了,代码管理 Codeup概述(新版)

    代码管理 Codeup(新版)云效代码管理 Codeup (https://codeup.aliyun.com/) 是阿里云出品的一款企业级代码管理平台,提供代码托管.代码评审.代码扫描.质量检测等功 ...

  5. ios定时器轮训_Android产品研发(十三)-- App轮训操作

    上一篇文章中我们讲解了android app实现长连接的几种方式,各自的优缺点以及具体的实现,一般而言使用第三方的推送服务已经可以满足了基本的业务需求,当然了若是对技术有追求的可以通过NIO或者是MI ...

  6. [转]Android产品研发(十九)

    转载请标明出处:一片枫叶的专栏 上一篇文章中我们讲解了webview中问题集锦,讲解了webview的性能优化.webview种入Cookie信息.activity退出的时候清除webview信息报错 ...

  7. Android产品研发(十)--尽量不使用静态变量保存数据

    转载请标明出处:一片枫叶的专栏 上一篇文章中我们讲解了Android开发过程中几种常见网络协议:xml,json,protobuf等,以及它们各自的优缺点,一般而言当我们的App涉及到了网络传输时都会 ...

  8. Android产品研发(五)--多渠道打包

    转载请标明出处:一片枫叶的专栏 国内的Android开发者还是很苦逼的,由于众所周知的原因,google play无法在国内打开(翻墙的就不在考虑之内了),所以Android系的应用市场,群雄争霸.后 ...

  9. Android产品研发(十七)--Hybrid开发

    转载请标明出处:一片枫叶的专栏 上一篇文章中我们介绍了Android开发中经常会涉及到但又常常被忽视掉的开发者模式.主要讲解了包括如何打开手机的开发者模式,开发者模式中各个菜单的意义和作用,如何清除手 ...

最新文章

  1. 【学习笔记】和式(《具体数学》第二章)
  2. 树莓派4装Ubuntu
  3. Golang和Ethereum中的big.Int
  4. Ceres Solver Document学习笔记
  5. 再也不怕别人动电脑了!用Python实时监控
  6. 网站安装打包 软件环境检测与安装[二] 下
  7. vue页面跳转后返回原页面初始位置
  8. html表格美化代码,分享:记录一次使用纯CSS美化table表格的代码
  9. 理解Silverlight的路径填充规则
  10. Centos 6.5 linux 安装nginx
  11. 值得收藏的Redis基础总结
  12. python post cookies_python 之post、get与cookie实战
  13. html中多个网页的跳转页面,Html --- Footer 多页面应用跳转
  14. 如何找到属于自己高效学习方法?
  15. ROS naviagtion analysis: costmap_2d--Costmap2D
  16. 配置路由器console接口密码和vty接口密码
  17. win7系统如何搜索计算机,win7怎样搜索文件?win7系统准确搜索文件的方法
  18. 互联网晚报 | 1月13日 星期四 | 恒驰5首车下线;抖音电商测试快递服务“音尊达”;中国移动10086 App月底停止运营...
  19. 安卓分屏神器_手机端必备神器,一经推出轻松拥有过千万用户下载量!
  20. 2022年芜湖市科技型中小企业类科技项目申报奖励补贴条件及申报时间程序

热门文章

  1. Teraterm的Log设定
  2. 【Linux】tmpfs简介及增加方式
  3. 解决CentOS无法解析域名的问题
  4. C++(八)— 死锁原因及解决方法
  5. ThinkPHP3.2.3 的异常和错误屏蔽处理
  6. 解决element-ui的el-select组件文字超过宽度时不出现横向滚动条问题
  7. centos7执行 wget命令: command not found的两种解决方法
  8. 分表分库解决方案(mycat,tidb,shardingjdbc)
  9. 如何使用Maven创建具有依赖项的可执行JAR?
  10. java如何构建图_如何从传递边构建子图?