SVN创建分支/合并分支/切换分支

一、概念
在建立项目版本库时,可首先建好项目文件夹,并在其中建立trunk, branches, tags三个空的子目录。这样在trunk中开始进行开发。
trunk是主分支,是日常开发进行的地方。
branches是分支。一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中。又比如为不同用户客制化的版本,也可以放在分支中进行开发。
tags目录一般是只读的,这里存储阶段性的发布版本,只是作为一个里程碑的版本进行存档。
或:
trunk 主分支,永远与生产环境保持一致,以便能够随时创建开发分支。
branch 分支,依据产品需求版本创建的开发分支。branch 发布至生产环境后合并至 trunk。
tag 标记(归档分支),branch 发布至生产环境后创建一个 tag。此 tag 不允许修改,用于版本回滚。

二、创建分支
假设我们收到产品需求,我们需要针对这个产品需求版本需求创建一个分支。开发分支的都是从 trunk 中创建出来的,点击源版本(trunk)选择Branch/tag 菜单
SVN创建分支/合并分支/切换分支
在创建分支的界面进行以下四个操作

输入新分支路径及名称
输入日志信息说明创建分支 的原因与用途
起始版本号选择 Head revision in the repository
检查输入与选择项无误后点击【ok】按扭
SVN创建分支/合并分支/切换分支
分支创建更新 branch 目录下的【svn 版本说明.xlsx】文件,因为并行分支开发的情况下会有个分支同时进行开发、测试或者发布,所以需要一个说明文档进行统一管理
SVN创建分支/合并分支/切换分支
当有其它产品版本需求通过评审需要进行开发的时候,我们重复上面步骤开出一个并行版本来,如修改网站的案例页面,创建一个名称为 mybranch_2.0的分支

三、合并分支
满足以下条件则应该进行分支合并

开发版本将要发布测试申请时
当一个开发版本完成开发工作,需要提交测试申请的时候。我们需要检查有哪些版本是在当前开发版本之前已经发布上线,但未将变更内容更新至当前开发版本的。则需要将之前已发布版本先合并至 trunk,再由 trunk 更新至当前开发版本后,再发布测试申请;以避免当前版本发布后将之前版本的功能冲掉了

开发版本发布至生产环境时
此时需要将开发分支先合并至trunk,再由trunk 更新至正在进行开发的分支版本中

合并操作如下

1、开发分支合并至 trunk
trunk 中右击并选择svn菜单Merge,在弹出的界面选择【Merge a range of revisions】后点击【Next】
SVN创建分支/合并分支/切换分支
SVN创建分支/合并分支/切换分支
选择好后点击【Next】 ->【Merge】即可,过程如遇到冲突就解决

2、trunk 更新至正在开发的分支版本

操作方式与【开发分支合并至 trunk】,只是调换了源版本与目标版本而已

四、已发布版本tag管理
Tag 用于标记你版本的发布点,可用生产版本备份丢失的情况下进行回滚操作。Tag 创建方式类似从 trunk 创建分支,就是源版本为已发布的 branch;tag 版本命令规范:tag_开发分支版本名称

五、切换分支
  1、右键项目 —> Team —> 切换(S)…(Switch to another Branch/Tag/Revision…)