SVN 分支管理模式探析 本文试图从SVN 分支管理的结构模式、规则模式、使用场景、优缺点分析等几个方面阐述几种不同的分支管理模式
结构模式——通过约束和指导项目的整体目录结构,实现并行开发的组织结构、开发模式及开发过程的约束和指导
规则模式——通过对项目不同分支的相关的操作实施约束,如访问控制、分支合并及发布等操作的约束和指导
1、 使用场景 a) 你的系统只有一个版本发布给最终用户; b) 你的维护方式是让客户不断升级到下一个版本; c) 所有对系统的修改都必须包含在下一个版本中; d) 已发布版本的bug 是可控的,极少存在进行下一个版本开发过程中进行上一版本bug 的修复工作
2、 图例 3、 结构模式 分支名称 源分支 开发方式 对应版本 tru nk 无 项目开发人员主要分支,其他人员无需使用该分支 当前正在开发的版本-Dev tags tru nk 测试和发布专用分支,该分支代码不允许任何形式的修改 当前正在测试的版本-Test 当前已经发布的版本-R branches ─ ─ ─ 4、 规则模式 a) 权限规则:Tru nk 分支对项目开发人员读写权限、tags 分支对所有人只读权限、banches 分支废弃不用或很少用
b) 分支规则:开发人员直接在tru nk 上进行项目的开发,提测阶段从 tru nk 上拉测试分支2010-12-15-1
0-T1 到 tags 下,供测试人员进行测试;发布阶段从 tru nk 上拉发布分支2010-12-15-1
0-R1 到 tags 下,供发布人员进行发布
5、 优缺点分析 a) 优点:分支结构简单、清晰;开发过程中无分支合并/冲突解决等操作 b) 缺点:不支持并行开发;不支持多版本发布
单主干多分支-并行开发模式 1、 使用场景 a) 你的系统只有一个版本发布给最终用户; b) 你的维护方式是让客