SVN代码trunk branches tags 使用说明
使用场景
平时使用SVN时,由于没有特殊需求,只是使用到了trunk。最近在项目中需要对代码的版本进行管理,涉及到本地的定制,版本发布等,于是在网上查阅了一些资料,结合实际对 trunk、tags、branches 进行体验操作,有点收获,怕以后忘了,故做此记录。
SVN流程
说明:
Trunk:代码开发主干,所有最新的代码都在这里。
Tags:每个上线版本里程碑,相对成熟的版本可保证直接上线(项目名_V1.0,项目名_V1.1…)。
Repair branch:修正bug的分支(名字:项目名_R_V1.0,项目名_R_V1.1),从需要修复的tag拉出分支,用于解决已上线版本的bug。
Customize branch:定制化需求的开发分支。
提交主干操作说明
以eclipse集成svn为例
1、在svn服务器上创建三个目录,并将项目提交到trunk目录下版本号为V1.0
2、将本地项目提交到svn库中。
3、修改本地程序后,先和远程svn同步,解决完差异后将代码提交到svn。
创建tag发布版本
基于trunk中最新版本创建MyLearn_V1.0。选中项目右键,依次选择"team" -> "分支/标记...",在弹出窗口的"To path"中填入tag的地址。
输入tags的目录及标记名称。
提交后在文件夹MyLearn\tags文件夹下出现MyLearn_V1.0文件夹,tags目录下的MyLearn_V1.0文件夹就是以trunk中指定的版本拷贝做为版本V1.0进行的发布。
基于Tag的Repair branch
版本V1.0发布上线后,出现线上bug后需要修复,则以Tag中MyLearn_V1.0创建Repair Branch(见Tag),在Repair的分支中修复问题。修复完成后需要将此次的改动Marge(合并)到trunk中同时创Tag_V1.1进行发布。
1、将svn环境切换到tags标记中
2、基于tags MyLearn_V1.0版本创建bug修复分支 MyLearn_R_V1.0 (操作步骤同tags)。在分支环境先程序修复后提交到分支MyLearn_R_V1.0中
3、将程序合并到trunk主干中。
4、选中本次提交的标记,合并到trunk主干中