TFS 2018 升级错误问题=icon_traffic_cone

标签 tfs upgrade

我正在将 TFS 2015 Update 3 升级到 2018 Update 2。总体而言,一切正常,但对于一个项目,特别是我无法访问“工作”选项卡。运行流程模板更新向导时,会弹出以下警告和错误。 TFS 认为敏捷模板是最合适的模板。

[Warning] TF400609: Cannot add the action 'Microsoft.VSTS.Actions.StartWork' to the work item type 'Task' because the state 'New' does not exist.

[Warning] TF400609: Cannot add the action 'Microsoft.VSTS.Actions.StopWork' to the work item type 'Task' because the state 'New' does not exist.

[Warning] TF400609: Cannot add the action 'Microsoft.VSTS.Actions.StartWork' to the work item type 'Bug' because the state 'New' does not exist.

[Warning] TF400609: Cannot add the action 'Microsoft.VSTS.Actions.StopWork' to the work item type 'Bug' because the state 'New' does not exist.

[Warning] VS402404: Bugs On TaskBoard: Bug does not have the Microsoft.VSTS.Common.Activity field defined. Some charts will not include these work item types.

[Warning] VS402404: Bugs On TaskBoard: Bug does not have the Microsoft.VSTS.Scheduling.RemainingWork field defined. Some charts will not include these work item types.

[Warning] TF400607: Category 'Microsoft.HiddenCategory' will be overwritten.

[Error] TF400654: Unable to configure Planning Tools. The following element contains an error: Properties. This element defines the properties for this team project. The value of the 'WorkItemTypeIcons' property is invalid. VS403291: Invalid work item type in pair 'Issue=icon_traffic_cone'.

需要采取什么措施才能正确解决此问题?我了解如何创建新的流程模板,但想确认升级后 TFS 2018 中的默认敏捷模板是否损坏以及是否可以修复?

最佳答案

我终于解决了这个问题。为了社区的利益,我在网上没有找到太多信息并发布了下面的解决步骤。

该项目存在两个不寻常的问题。它是一个旧项目,从之前几个版本的 TFS 迁移而来,并且还具有模板流程自定义。这会阻止流程模板自动更新。

解决步骤是:

1) 从 TFS 2018 下载敏捷流程

2) 从“The Problem Project”项目中导出所有必要的定义。这显示了许多错误。例如,未定义 ProcessConfiguration、未定义 FeedbackRequest 等。要获取这些错误,请运行以下命令并查看导出的文件:

witadmin.exe exportcategories /collection:"http://tfsonprem:8080/tfs/FRTS_Projects/" /p:"The Problem Project" /f:"C:\TFSFix\categories.xml"
witadmin.exe exportprocessconfig /collection:"http://tfsonprem:8080/tfs/FRTS_Projects/" /p:"The Problem Project" /f:"C:\TFSFix\processconfig.xml" 

witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\bug.xml" /n:"bug"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\codereviewrequest.xml" /n:"code review request"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\codereviewresponse.xml" /n:"code review response"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Epic.xml" /n:"epic"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\feature.xml" /n:"feature"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\feedbackrequest.xml" /n:"feedback request"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\feedbackresponse.xml" /n:"feedback response"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\issue.xml" /n:"issue"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Sharedparameter.xml" /n:"Shared parameter"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\SharedStep.xml" /n:"Shared Step"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Task.xml" /n:"Task"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Testcase.xml" /n:"test case"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\testplan.xml" /n:"test plan"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\testsuite.xml" /n:"test suite"
witadmin.exe exportwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\user story.xml" /n:"user story"

3) 从敏捷流程中导入缺失的定义:

witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\codereviewrequest.xml" 
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\codereviewresponse.xml" 
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\Epic.xml" 
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\feature.xml"
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\feedbackrequest.xml" 
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\feedbackresponse.xml" 
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\issue.xml"
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\Sharedparameter.xml"
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\TypeDefinitions\SharedStep.xml"

4) 导入流程配置和类别,同样来自敏捷流程:

witadmin.exe importcategories /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\categories.xml"
witadmin.exe importprocessconfig /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Agile\WorkItem Tracking\Process\processconfiguration.xml" 

5) 步骤 4 显示了阻止导入的其他错误**。这是由于我们对敏捷流程的定制造成的。修复现有流程 UserStory.xml 和 Bug.xml 中的错误并重新导入定义:

witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\UserStory.xml"
witadmin.exe importwitd /collection:"http://tfsonprem:8080/tfs/DefaultCollection/" /p:"The Problem Project" /f:"C:\TFSFix\Bug.xml"

还修复进程配置***

6) 重复步骤 4。两个命令都必须运行且没有错误

就是这样。

=======

** UserStory.xml 和 Bug.xml 中缺少一个新字段

<FIELD name="Value Area" refname="Microsoft.VSTS.Common.ValueArea" type="String">
        <REQUIRED />
        <ALLOWEDVALUES>
          <LISTITEM value="Architectural" />
          <LISTITEM value="Business" />
        </ALLOWEDVALUES>
        <DEFAULT from="value" value="Business" />
        <HELPTEXT>The type should be set to Business primarily to represent customer-facing issues. Work to change the architecture should be added as a User Story</HELPTEXT>
      </FIELD>

*** 有些定制只是我们的孤立案例,可能与社区无关。仅作为记录,流程配置还需要对状态进行一些更新:

  <TaskBacklog category="Microsoft.TaskCategory" pluralName="Tasks" singularName="Task" workItemCountLimit="1000">
    <States>
      <State value="Active" type="Proposed" />
      <State value="In QA" type="InProgress" />   
      <State value="In Review" type="InProgress" />   
      <State value="Closed" type="Complete" />
    </States>

关于TFS 2018 升级错误问题=icon_traffic_cone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52631488/

相关文章:

hibernate - Spring Boot 覆盖第三方依赖版本

git - 如何配置 Visual Studio 以使用 Beyond compare for TFS GIT?

visual-studio - 在没有 Visual Studio 的情况下访问 Team Foundation Server 版本控制中的文件

postgresql - 升级到想要使用校验和的 postgres 10

升级到 msysgit 1.7.0.2?

ios - 我是否必须升级到 Lion 才能在运行 iOS 5.1 的 iPad 上进行测试?

来自 Backlog 的 TFS 查询以不同方式创建

tfs - 使用 tfsbuild.exe 从命令行启动 TFS 构建时,如何指定构建参数?

visual-studio - VS 2015没有构建通知吗?

php - 如何在 OpenCart 2.0.3.1 中从 OpenCart 1.5.6.4 导入产品