禅道16.0版本开始,优化和增强了产品的分支/平台功能,主要特点如下:
- 多分支/平台功能兼容各种大小型项目,项目/迭代可以关联对应产品的某个分支/平台。
- 分支/平台支持灵活管理,可以把分支/平台理解为时间层面的概念,不同时间阶段会产生不同的分支/平台。
- 分支/平台支持合并功能,可以将已经完成分支/平台合并到主干和其他分支/平台。
- 除主干外,其他分支/平台之间管理是相互独立的,不能混在一起。
接下来,我们以多分支产品为例,给大家详细介绍产品的多分支/平台的增强功能。
一、维护多分支产品的分支
1、将产品设置为多分支产品
添加产品时,产品类型选择多分支或多平台。
2、设置产品分支
到产品–设置–分支列表里,查看和维护分支。
系统会自动生成一个主干的默认分支,主干分支不可编辑和删除。
3、新建分支
点击分支列表右上角的新建分支按钮,进入新建分支的弹窗页面。
输入分支名称和分支描述,点击保存即可。
4、编辑分支
点击分支列表中的编辑按钮,可以编辑分支。
编辑分支时,可以修改分支名称、分支状态、分支描述。
分支创建成功后,默认状态是激活的,可以编辑修改为关闭。
批量编辑分支,勾选多个分支后,点击底部的编辑按钮,进入批量编辑分支页面。
批量编辑分支页面:
5、关闭分支
可以通过分支列表右侧操作栏的关闭按钮对分支进行关闭。
6、分支的排序
拖拽可以实现分支的排序,分支列表排序后,可以实现分支的排序。
排序成功后,其他涉及到分支的排序也与分支列表的排序一致。
重新排序后的下拉组件的分支:
7、分支的合并
主干不可以被合并,分支列表中选中了主干分支,再选择其他分支,那么底部不显示合并按钮。
选择其他分支时,显示合并按钮。
点击合并后,可以把选中的分支合并到其他非选中的分支里(合并到已有的分支里)。
合并分支后,将会把分支下面对应的发布、计划、版本、模块、需求、Bug、用例都合并到新的分支下。
还可以合并到新创建的分支里。
勾选新建分支,输入新分支名称和描述,点击保存即可合并到新建分支中。
点击保存后,会提示进行确认,合并分支后,数据将不可以恢复,需要谨慎操作。
二、分支所属模块的维护
维护了分支后,接下来我们来维护分支下的模块。分支的模块维护与正常产品的模块维护一致,我们简单介绍说明一下。
1、添加分支的模块
产品–设置–模块里,创建和维护当前分支下的模块。
切换产品下拉组件的分支名后,可以创建其他分支下的模块。
2、模块名和分支名的显示设置
多分支产品下,显示设置多了一项分支名显示。
点击模块下的显示设置,可以对列表是否显示模块名和分支名进行编辑。
设置为都显示后,需求列表页面如下:
三、多分支/平台产品支持创建孪生需求
多分支/多平台产品支持创建孪生需求,即为每个分支/平台创建一条相同的需求,孪生需求间内容同步,状态不同步。您可以在每个不同的分支/平台上为需求规划研发任务。
1、创建孪生需求
- 在多分支/平台产品中【创建研发需求】,点击【+】选择多个分支,并选择对应的模块和计划。
- 点击保存按钮后,每个分支会分别创建一个需求,需求间互为孪生关系。
- 孪生需求间除产品、分支、模块、计划、阶段字段外均保持同步。
2、需求详情页中可以查看其他孪生需求
孪生需求中的第一条(标签为主题色)的需求为当前需求。
3、解除孪生关系
鼠标悬浮在孪生需求上,展示【解除】按钮,点击后解除此条需求孪生关系。孪生关系解除后无法恢复。
解除孪生的需求内容不再与其他孪生需求同步。
需求解除孪生后,不影响其他孪生需求间的孪生关系。
4、变更时可以直接解除孪生关系,解除后变更的流程和内容不会同步。
四、分支和其他功能间的关联逻辑
可以关联需求、模块、计划、发布所属的分支。
可以关联版本、Bug、用例所属的分支。
项目和执行可以关联产品的分支进行需求开发。
1、模块的展示和选择逻辑
主干分支下创建/编辑需求、Bug、用例时,只能选择主干的模块。
分支1下创建/编辑需求、Bug、用例时,可以选择分支1和主干的模块。
升级数据处理,需求、Bug、用例在哪个分支的模块下,升级后统一归并到模块所属分支下。
以需求为例:
创建主干需求,只能选择主干下的模块。
切换为非主干分支后,所属模块可以选择主干和当前分支的所属模块。
2、计划的展示和选择逻辑
2.1、需求关联计划:
- 创建需求关联计划时,只能关联本分支下的未过期的子计划。
- 计划关联需求时,主干计划只能关联主干需求。
- 计划关联需求时,分支1计划能关联主干和分支1的需求。
2.2、创建计划:
- 创建计划可以关联多个分支,子计划只能在父计划的分支范围内进行选择。
- 修改父子计划的分支后,计划内的需求和bug也将移除。
2.3、项目和执行关联计划:
- 项目和执行选择分支后,可以关联计划。
例如:
项目:主干、分支1、分支2
计划:主干、分支1、分支3
项目关联计划后,只能关联计划中主干、分支1的需求。
**3、**版本关联需求和Bug逻辑
主干版本关联需求时,不点击搜索,列表显示执行已关联主干的需求且版本未关联的主干需求,点击搜索时搜索主干所有的需求。
主干版本关联Bug时,不点击搜索,列表显示执行下主干Bug且版本未关联的主干Bug,点击搜索时显示主干所有Bug。(不再区分提交Bug关联的执行)
分支1版本关联需求时,不点击搜索,列表显示执行已关联主干和分支1的需求且版本未关联的需求,点击搜索时搜索主干和分支1所有的需求。
分支1版本关联Bug时,不点击搜索,列表显示执行下分支1的Bug且版本未关联的分支1下的Bug,点击搜索时显示主干和分支1所有的Bug。
以版本关联需求为例,我们来说明以上逻辑:
主干的版本关联需求页面,未点击搜索时,列出了执行已关联的需求且版本未关联的主干分支的需求:
点击搜索后,列出了主干分支下所有的需求。
4、发布关联需求和Bug的逻辑
4.1 产品发布关联需求和Bug(主干)
关联需求:默认进来显示当前产品的主干需求,搜索也是显示主干需求。
关联Bug:默认进来显示当前产品的主干下的Bug,搜索也是显示主干下的Bug。
4.2 产品发布关联需求和Bug(分支1)
关联需求:默认进来显示当前产品分支1和主干需求,搜索也是显示分支1和主干需求。
关联Bug:默认进来显示当前产品分支1和主干下的Bug,搜索也是显示分支1和主干下的Bug。
4.3 项目发布关联需求和Bug(主干)
关联需求:默认进来列版本所属产品关联的主干需求,搜索列当前产品下所有的主干需求。
关联Bug:默认进来列版本所属产品关联的主干下的Bug,搜索列当前产品下所有的主干下的Bug。
4.4 项目发布关联需求和Bug(分支1)
关联需求:默认进来列版本所属产品关联的主干/分支1需求,搜索列当前产品下所有的主干/分支1需求。
关联Bug:默认进来列版本所属产品关联的主干/分支1下的Bug,搜索列当前产品下所有的主干/分支1下的Bug。
4.5 关联遗留的Bug默认进来列出的范围
当前发布所属产品所属分支/主干下、Bug创建日期在版本所属迭代起止日期中间(可以等于),激活状态、或解决日期大于版本所属执行的结束日期,且是该发布下未关联的Bug。
4.6 关联解决的Bug默认进来列出的范围
本所属产品关联的主干/分支1需求,搜索列当前产品下所有的主干/分支1需求。
关联Bug:默认进来列版本所属产品关联的主干/分支1下的Bug,搜索列当前产品下所有的主干/分支1下的Bug。
4.5 关联遗留的Bug默认进来列出的范围
当前发布所属产品所属分支/主干下、Bug创建日期在版本所属迭代起止日期中间(可以等于),激活状态、或解决日期大于版本所属执行的结束日期,且是该发布下未关联的Bug。
4.6 关联解决的Bug默认进来列出的范围
当前发布所属产品所属分支/主干下、Bug解决日期大于版本所属迭代开始日期和属于当前版本的所属执行的Bug,或者不属于当前版本的所属执行,但创建日期小于版本所属执行的开始日期,且为该发布下未关联的Bug。