使用“我的工作”支持 bug 更新状态

Azure DevOps Server 2020 |Azure DevOps Server 2019 |TFS 2018

重要

本文适用于本地 XML 进程模型的项目自定义。 有关过程模型的概述,请参阅 自定义工作跟踪体验

使用"我的团队资源管理器,你可以对 TFVC Team Foundation 版本控制 (进行代码评审) 响应。 如果你为用于跟踪 Bug 的工作项类型 (WIT) 定义了工作流状态,则可能需要更新过程配置“状态-元状态”映射。 当开发人员 使用"我的工作"更新 bug 状态时,"我的工作"使用这些映射来更新 bug 状态。 通过" 我的工作",开发人员可以管理其进行中的工作、暂停和恢复工作,以及请求代码评审。 请参阅 开发人员的一生:暂停工作、修复 bug 和进行代码评审

指定用于跟踪 Bug 类别定义中的 bug 的所有 WIT,在 ProcessConfiguration 中定义状态到元状态映射。 对定义文件所做的更改适用于在自定义项目中工作的所有团队。

要求

  • 若要访问"我的工作",Team Foundation 版本控制 (源代码) TFVC 帐户。

  • 若要运行 witadmin 命令行工具,你必须是项目的 Project 集合管理员组的成员。 有关详细信息,请参阅 更改项目集合级权限

对 Bug 工作流状态进行的默认元状态分配

下表列出了分配给 Agile 和 CMMI 过程模板的 Bug 工作流状态的默认元状态。 你只需将元状态分配给要在任务板上显示的工作流状态或分配给要让“我的工作”识别的工作流状态。 默认分配包括从"活动"或"建议"到"已关闭"的典型工作流进度。 如果您的 Bug 包含此进度外部的工作流状态 (例如,“已移除”状态),则将在元状态分配中排除这些状态。

敏捷

<BugWorkItems category="Microsoft.BugCategory">
    <States>
       <State value="Active" type="InProgress" />
       <State value="Resolved" type="Resolved" />
       <State value="Closed" type="Complete" />
    </States>
</BugWorkItems>

CMMI

<BugWorkItems category="Microsoft.BugCategory">
    <States>
       <State value="Proposed" type="Proposed" />
       <State value="Active" type="InProgress" />
       <State value="Resolved" type="Resolved" />
       <State value="Closed" type="Complete" />
    </States>
</BugWorkItems>

将 WIT 添加到 Bug 类别

通过更新类别定义文件,将其导入项目,将 WIT 添加到类别。 按照 与流程 模型匹配的自定义序列操作。

  1. 打开 中的类别记事本并找到 CATEGORY 的元素"Bug Category"

  2. 若要添加新类型的工作项,请添加一 WORKITEMTYPE 个 元素,该元素指定要添加的工作项类型的引用名称。

    例如,以下语法将工作项类型“Performance Bug”添加到 Bug 类别。

    <CATEGORY name="Bug Category" refname="Microsoft.BugCategory">  
          <DEFAULTWORKITEMTYPE name="Bug" />  
          <WORKITEMTYPE name="Performance Bug" />  
    </CATEGORY>  
    
  3. 导入修改后的定义文件。

    witadmin importcategories /collection:CollectionURL /p:ProjectName /f:"DirectoryPath\categories.xml"  
    

将元状态分配给为 Bug 定义的工作流状态

将元状态分配给 BugWorkItems ProcessConfiguration 定义中 元素内 bug 的工作流状态。 按照 与流程 模型匹配的自定义序列操作。

  1. 打开 记事本 中的 ProcessConfigurations 并找到 BugWorkItems 元素。

  2. 更新分配给元素的值 State ,以匹配工作流中用于跟踪 bug 的工作项类型的值。

  3. (可选) State 若要添加工作流内存在的另一种状态,请指定映射到 Bug 类别中包含的工作项类型的工作流状态的另一个元素。

    例如,以下语法将 的状态值添加到 "Investigating""inProgress"

    <BugWorkItems category="Microsoft.BugCategory">  
          <States>  
          <State value="Active" type="InProgress" />  
          <State value="Investigating" type="InProgress" />  
          <State value="Resolved" type="Resolved" />  
          <State value="Closed" type="Complete" />  
          </States>  
    </BugWorkItems>  
    

    重要

    必须为对应于有效工作流 State 状态的元素指定值。 有效的工作流状态是指为项目 Bug 类别中包含的工作项类型定义的工作流状态。 此外,必须在敏捷或 Bug 组中分配元状态类型,即 ProposedInProgressResolvedComplete

  4. 导入修改后的定义文件。