使用SVN+Eclipse做软件版本控制,介绍分支和标记用法
1,SVN目录结构
Trunk : 主干目录,此目录下的文件为基准文件
Branches : 用于开发的分支目录
Tags : 用于发布的版本目录
下图是基于eclipse svn repositores查看的目录结构
(图片1 : 目录结构)
2,分支的版本
Branches 的定义规则: project name + 日期时间 + 功能点 , 比如 sns-home_20090506_profile , 在创建每一个branch时,必须增加标注。
3,创建新分支
(图片2 : 开始创建分支)
(图片3 : 选择分支命名和SVN 资源路径)
(图片4 : 选择从HEAD revision 或者指定的revision 开始生成分支)
(图片5 : 必须为本分支增加标注)
(图片5 _ 1 : 标注分支)
4,从分支合并到主干
1、当branch版本已经开发和通过测试后,可以通过subeclipse 合并到trunk,可以合并整个项目也可以合并单个文件, 如下图
(图片8 : 多个分支都有改动)
2、如上图,Hi.java文件有改动,那我们就选中 *trunk*下的Hi.java文件(注意不是分支下的Hi.java),然后右击选择team->merge命令
(图片9 : 开始merge)
3、选择merge后弹出如下对话框,具体说明如下,
- 第一个红框
- 上面部分选择当前文件(项目)对应的分支上的文件(项目),可以通过后面的select按钮选择
- 下面部分选择合并的起始版本,一般就是建立分支时的版本就ok,(具体哪个版本根据建立分支时填写的备注即可得知)
- 第二个红框默认选中,可以不用管
- 第三个红框,就是选择分支上的稳定的版本
- 如果确定最后的版本是稳定的,就勾选【Merge to HEAD revision】
- 如果最后的版本不是稳定的,那可以选择之前某个稳定的版本即可,可以通过后面的select按钮选择
确认之后点击"Merge",然后开始执行合并操作。
(图片10 : 选择分支以及分支的开始和结束版本)
4、合并完成之后,本地trunk下的文件将会被更新, 注意这里只是合并到本地,还需要你再检查一下合并后的文件是否正确,再次确认后需要使用Team->commit 来提交合并后的内容。
5、建议合并后,再在trunk下对修改过的内容进行测试,最好一个点一个点的进行测试,保证合并后的内容是稳定无误的。
5,标注新版本
(图片6 : 新版本的路径)
(图片7 : 新版本的定义规则)
(图片11 : 合并之后打tag)
6,参考资料
http://subclipse.tigris.org/branch_tag.html
http://wenku.baidu.com/view/a03f2aeab8f67c1cfad6b8d3.html
Alpha:是内部测试版,一般不向外部发布,会有很多Bug.一般只有测试人员使用。
Beta:也是测试版,这个阶段的版本会一直加入新的功能。在Alpha版之后推出。
RC:(Release Candidate) 顾名思义么 ! 用在软件上就是候选版本。系统平台上就是发行候选版本。RC版不会再加入新的功能了,主要着重于除错。
GA :General Availability,正式发布的版本,在国外都是用GA 来说明release版本的。
RTM:(Release to Manufacture)是给工厂大量压片的版本,内容跟正式版是一样的,不过RTM版也有出限制、评估版的。但是和正式版本的主要程序代码都是一样的。
OEM:是给计算机厂商随着计算机贩卖的,也就是随机版。只能随机器出货,不能零售。只能全新安装,不能从旧有操作系统升级。包装不像零售版精美,通常只有一面CD和说明书(授权书)。
RVL:号称是正式版,其实RVL根本不是版本的名称。它是中文版/英文版文档破解出来的。
EVAL:而流通在网络上的EVAL版,与“评估版”类似,功能上和零售版没有区别。
RTL:Retail(零售版)是真正的正式版,正式上架零售版。在安装盘的i386文件夹里有一个eula.txt,最后有一行EULAID,就是你的 版本。比如简体中文正式版是EULAID:WX.4_PRO_RTL_CN,繁体中文正式版是WX.4_PRO_RTL_TW。其中:如果是WX.开头是 正式版,WB.开头是测试版。_PRE,代表家庭版;_PRO,代表专业版。
α、β、λ常用来表示软件测试 过 程中的三个阶段,α是第一阶段,一般只供内部测试使用;β是第二个阶段,已经消除了软件中大部分的不完善之处,但仍有可能还存在缺陷和漏洞,一般只提供给 特定的用户群来测试使用;λ是第三个阶段,此时产品已经相当成熟,只需在个别地方再做进一步的优化处理即可上市发行。