【发布时间】:2013-07-11 16:57:51
【问题描述】:
假设您是 Scrum 团队的一员,该团队使用 Visual Studio 中的 Scrum 团队项目模板和 Visual Studio ALM Rangers 规定的“高级分支计划”。您的团队开发了一个名为 FooBar 的产品,直到您完成了您计划为特定版本(我们将发布 FooBar v1)执行的所有功能和测试。开发分支与主分支合并,“高级分支计划”的相关分支从主分支分支出来。
最终,FooBar v1 发布,您和您的团队正在努力开发 FooBar v2。不幸的是,FooBar v1 客户发现了一个错误并报告了它。创建了一个工作项来修复错误,但开发人员需要知道这个错误在哪里。是在 FooBar v1 Service Pack 分支、Development 分支还是 FooBar v1 Hotfix 分支?
现在考虑您的团队正在开发 FooBar vN,其中 N 是任意数字。客户在 FooBar v(N - M) 中报告了一个错误,其中 M 是任意数字且 N > M。创建了一个工作项来修复该错误,但开发人员需要知道该错误在哪里。它在 FooBar v(N - 1) 中吗?发展? FooBar v(N - M + 1)?
当然,工作项可以有一个标题来指示错误所在的分支,但这会导致临时命名方案不标准化。最好的办法是在创建工作项时添加一个字段,询问该工作项与哪个分支相关。向 TFS 中的现有工作项类型添加字段似乎非常简单:http://msdn.microsoft.com/en-us/library/vstudio/hh409273.aspx 不幸的是,这不是静态列表;它是动态的。
这是一个由两部分组成的问题:1) 是否可以向 TFS 中的 Scrum 工作项添加一个字段,其列表项依赖于特定团队项目中的分支?
并且:2) 如果可能的话,你有什么可以指点我的参考资料吗?如果这是第一次有人想到这个,我会很惊讶...
【问题讨论】:
-
所有客户版本都应该来自同一个分支。时期!您应该要求客户报告错误所在的版本,而不是错误所在的分支。要么控制您发布给客户的版本对应于 TFS 中的哪个变更集,要么使版本的变更集编号部分,例如“major.minor.hotfix.changeset”或类似内容。
-
请注意,必须修改上述声明以将主要版本考虑在内,但针对不同客户无序发布修补程序将给您带来吨问题,只有一个其中是哪个变更集导致了它。
-
我的问题措辞不当。我们的组织正在开发我们的客户可以收到的产品 beta 版本(有 Beta1、Beta2 和 Beta3)。为了提供支持,每个 beta 版本都有自己的 Service Pack 分支挂在 Main 上,每个版本都有一个 Release 分支。如果发现错误,则修复相关分支(SPBeta1、SPBeta2、SPBeta3、Dev。这使我们能够支持所有 beta 版本。)无论我们的分支策略如何,是否可以向列表项为的工作项添加字段依赖于特定团队项目中的分支?
-
再一次,您不会向客户分发分支机构。您分发构建。
-
我保证我不是想变得困难,但我理解这一点。在宏伟的计划中(简化):主要分支机构 Service Pack。 Service Pack 分支发布。发布已构建并发货。发现了一个错误。 (如果客户发现它无关紧要,如果开发人员在开发下一个版本时发现它......所有重要的是出现了一个错误某处。)取决于错误所在(已交付的产品或仍在开发中的代码),将修复一个代码分支(它可能会在以后为 some 版本构建。)根据我们的分支策略,它可能很难开发人员查明代码。
标签: c# xml visual-studio tfs alm