能否将 TFS 产品待办列表项移动到新项目?
Can a TFS Product Backlog Item be moved to a new project?
我在 ProjectA 下的 TFS 中有一个 PBI,其中填充了迭代和面积值。是否可以在不创建新 PBI 的情况下将此 PBI 移动到 ProjectB?
我在 Visual Studio UI 中找不到执行此操作的方法。如果我尝试手动输入 ProjectB 的区域路径,Visual Studio 说找不到路径。
我正在使用 Team Foundation Server 2013 和 Visual Studio Ultimate 2013。
没有。不能在团队项目之间移动工作项。
原因很简单:团队项目的流程模板定义了工作项。团队项目可以有不同的模板。如果您尝试将工作项从使用 Scrum 模板的团队项目移动到使用 CMMI 模板的团队项目,会怎样?
我会说得更深入一点,如果您需要此功能,那么您不应该首先拥有两个团队项目。
http://nakedalm.com/one-team-project/
我使用的术语是:
"If you have artifacts that interact, with artifacts defined as people, code, or work items, then they should be in a single Team Project"
http://nakedalm.com/creating-nested-teams-visual-studio-alm/
使用单个团队项目可以在积压/工作跟踪方面为您提供更多功能。就像上面描述的嵌套团队。
EDIT: This does not work for TFS2017 and forwards.
是的,请参阅 http://www.codeproject.com/Tips/1018002/Yes-You-Can-Move-TFS-WorkItems-Between-Projects 以获取可下载的实用程序、源代码和更详细的说明。
这是一个后门,SQL 管理器方法,Microsoft 不支持,但对我有用。这是 SQL:
UPDATE [Tfs_xxx].[dbo].[WorkItemsAre] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsLatest] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsWere] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
将 Tfs_xxx 替换为 Tfs_<您的收集数据库名称>。
项目本质上是继承Area和Iteration的。将这些从当前项目更改为目标项目会导致工作项 "move" 到目标项目。其他粗糙的边缘是分配池或工作流状态可能不一致,必须在 UI 中手动编辑以使工作项回到目标项目的流程中。
See my related answer。
虽然不适用于本地 TFS,但现在可以 do this with Azure Boards in Azure DevOps.
我在 ProjectA 下的 TFS 中有一个 PBI,其中填充了迭代和面积值。是否可以在不创建新 PBI 的情况下将此 PBI 移动到 ProjectB?
我在 Visual Studio UI 中找不到执行此操作的方法。如果我尝试手动输入 ProjectB 的区域路径,Visual Studio 说找不到路径。
我正在使用 Team Foundation Server 2013 和 Visual Studio Ultimate 2013。
没有。不能在团队项目之间移动工作项。
原因很简单:团队项目的流程模板定义了工作项。团队项目可以有不同的模板。如果您尝试将工作项从使用 Scrum 模板的团队项目移动到使用 CMMI 模板的团队项目,会怎样?
我会说得更深入一点,如果您需要此功能,那么您不应该首先拥有两个团队项目。
http://nakedalm.com/one-team-project/
我使用的术语是:
"If you have artifacts that interact, with artifacts defined as people, code, or work items, then they should be in a single Team Project"
http://nakedalm.com/creating-nested-teams-visual-studio-alm/
使用单个团队项目可以在积压/工作跟踪方面为您提供更多功能。就像上面描述的嵌套团队。
EDIT: This does not work for TFS2017 and forwards.
是的,请参阅 http://www.codeproject.com/Tips/1018002/Yes-You-Can-Move-TFS-WorkItems-Between-Projects 以获取可下载的实用程序、源代码和更详细的说明。
这是一个后门,SQL 管理器方法,Microsoft 不支持,但对我有用。这是 SQL:
UPDATE [Tfs_xxx].[dbo].[WorkItemsAre] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsLatest] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsWere] SET AreaID=@AreaID,IterationID=@IterationID WHERE ID=@WorkItemID
将 Tfs_xxx 替换为 Tfs_<您的收集数据库名称>。
项目本质上是继承Area和Iteration的。将这些从当前项目更改为目标项目会导致工作项 "move" 到目标项目。其他粗糙的边缘是分配池或工作流状态可能不一致,必须在 UI 中手动编辑以使工作项回到目标项目的流程中。
See my related answer。 虽然不适用于本地 TFS,但现在可以 do this with Azure Boards in Azure DevOps.