svn分支管理模式解析

svn分支管理模式解析

ID:13462517

大小:158.45 KB

页数:8页

时间:2018-07-22

svn分支管理模式解析_第1页
svn分支管理模式解析_第2页
svn分支管理模式解析_第3页
svn分支管理模式解析_第4页
svn分支管理模式解析_第5页
资源描述:

《svn分支管理模式解析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SVN分支管理模式探析本文试图从SVN分支管理的结构模式、规则模式、使用场景、优缺点分析等几个方面阐述几种不同的分支管理模式。结构模式——通过约束和指导项目的整体目录结构,实现并行开发的组织结构、开发模式及开发过程的约束和指导。规则模式——通过对项目不同分支的相关的操作实施约束,如访问控制、分支合并及发布等操作的约束和指导。一、单主干-串行开发模式1、使用场景a)你的系统只有一个版本发布给最终用户;b)你的维护方式是让客户不断升级到下一个版本;c)所有对系统的修改都必须包含在下一个版本中;d)已发布版本的bug是可控的,极少存在进行下一个版本

2、开发过程中进行上一版本bug的修复工作。2、图例3、结构模式分支名称源分支开发方式对应版本trunk无项目开发人员主要分支,其他人员无需使用该分支当前正在开发的版本-Devtagstrunk测试和发布专用分支,该分支代码不允许任何形式的修改当前正在测试的版本-Test当前已经发布的版本-Rbranches───1、规则模式a)权限规则:Trunk分支对项目开发人员读写权限、tags分支对所有人只读权限、banches分支废弃不用或很少用。b)分支规则:开发人员直接在trunk上进行项目的开发,提测阶段从trunk上拉测试分支2010-12-1

3、5-1.0-T1到tags下,供测试人员进行测试;发布阶段从trunk上拉发布分支2010-12-15-1.0-R1到tags下,供发布人员进行发布。2、优缺点分析a)优点:分支结构简单、清晰;开发过程中无分支合并/冲突解决等操作b)缺点:不支持并行开发;不支持多版本发布。一、单主干多分支-并行开发模式1、使用场景a)你的系统只有一个版本发布给最终用户;b)你的维护方式是让客户不断升级到下一个版本;c)所有对系统的修改都必须包含在下一个版本中;d)需要频繁的修改前一个发布版本的bug,以及不断开发新的版本。2、图例1、结构模式分支名称源分支开

4、发方式对应版本trunk无主干冻结,不允许开发当前已经发布的版本-Rtagstrunk测试和发布专用分支,该分支代码不允许任何形式的修改当前正在测试的版本-Test当前已经发布的版本-Rbranchestrunk开发专用分支当前正在开发的版本-Dev2、规则模式a)权限规则:lTrunk权限冻结开发,只有发布上线以后的版本才可以由SCM或SCM系统合并到trunk上;ltags分支对所有人只读权限,用户测试、集成和发布分支用;lbanches分支是任何版本开发的唯一分支。b)分支规则:l任何开发版本发起,都必须从trunk上copy出分支到b

5、ranches进行开发;l提交测试(集成、发布)必须先从trunk创建测试(集成、发布)分支,然后合并branches分支内容,保证trunk内容的更新及时反馈到集成;l发布阶段从trunk上拉发布分支2010-12-15-1.0-R1到tags下,然后合并branches内容到tags,供发布人员进行发布,发布成功后,合并tags分支到trunk。Trunk完成一次发布升级。1、优缺点分析a)优点:可以随时保证trunk上东西的稳定性,使trunk随时可用;可以从trunk上随时拿到已发布的任意一个版本。b)缺点:违背了SVN的规范,把tr

6、unk库当成了tag库去使用;分支合并频繁,导致冲突多,处理这些会消耗不少的资源,以及引入额外错误的可能;不支持多版本发布。一、多主干-串行开发模式1、使用场景a)你的系统有多个版本发布给最终用户;b)每个版本的维护都是独立进行的,只在需要的时候才进行各版本的合并维护;c)已发布版本的bug是可控的,极少存在进行下一个版本开发过程中进行上一版本bug的修复工作。2、图例1、结构模式分支名称源分支开发方式对应版本trunk无主版本的开发分支当前正在开发的版本-DevversionTrunk/version维护版本的开发分支当前正在开发的版本-D

7、evtagstrunk测试和发布专用分支,该分支代码不允许任何形式的修改当前正在测试的版本-Test当前已经发布的版本-Rbranches------------2、规则模式a)权限规则:Trunk和version分支对项目开发人员读写权限、tags分支对所有人只读权限、banches分支废弃不用或很少用。b)分支规则:开发人员直接在trunk或version上进行项目的开发,提测阶段从trunk或version上拉测试分支2010-12-15-1.0-T1到tags下,供测试人员进行测试;发布阶段从trunk或version上拉发布分支20

8、10-12-15-1.0-R1到tags下,供发布人员进行发布。a)Version开发分支可以从trunk或其他version分支上创建而来。b)可以根据需要在ve

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。