任务
- 版本:Free, Premium, Ultimate
- 提供:GitLab.com, GitLab Self-Managed, GitLab Dedicated
此功能的可用性由功能标志控制。 有关更多信息,请查看历史记录。
GitLab 中的任务是一种可以在 issue 中创建的规划项。 使用任务将 issues 中捕获的用户故事分解为 更小的、可追踪的项。
在规划 issue 时,您需要一种方式来捕获和分解完成它所必需的 技术要求或步骤。带有相关任务的 issue 定义更清晰, 因此您可以提供更准确的 issue 权重和完成标准。
有关最新更新,请查看 任务路线图。
任务是工作项的一种类型,是 GitLab 中 默认 issue 类型 的演进方向。 有关将 issues 和 epics 迁移到工作项以及添加自定义工作项类型的路线图, 请参见 epic 6033 或 规划方向页面。
查看任务
在 issues 的 子项 部分中查看任务。
您也可以 过滤 issue 列表
以查找 Type = task。
如果您从 issue 中选择任务,它会在对话框窗口中打开。 如果您选择在新浏览器标签页中打开任务,或从 issue 列表中选择任务, 任务将以全页视图打开。
创建任务
先决条件:
- 您必须至少拥有项目的 Guest 角色,或者项目必须是公开的。
创建任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择 添加。
- 选择 新任务。
- 输入任务标题。
- 选择创建新任务的 项目。
- 选择 创建任务。
从任务列表项创建
先决条件:
- 您必须至少拥有项目的 Guest 角色。
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,将鼠标悬停在任务列表项上并选择选项菜单( )。
- 选择 转换为任务。
任务列表项将从 issue 描述中移除,并根据其内容在任务小部件中创建任务。 任何嵌套的任务列表项都会向上移动一个嵌套级别。
向 issue 添加现有任务
先决条件:
- 您必须至少拥有项目的 Guest 角色,或者项目必须是公开的。
添加任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择 添加。
- 选择 现有任务。
- 按标题搜索任务。
- 选择一个或多个要添加到 issue 的任务。
- 选择 添加任务。
编辑任务
先决条件:
- 您必须至少拥有项目的 Planner 角色。
编辑任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务。 任务窗口将打开。
- 可选。要编辑标题,请选择它并进行更改。
- 可选。要编辑描述,请选择编辑图标( ),进行更改,然后 选择 保存。
- 选择关闭图标( )。
使用富文本编辑器
使用富文本编辑器编辑任务的描述。
先决条件:
- 您必须至少拥有项目的 Planner 角色。
编辑任务描述:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 描述 旁边,选择编辑图标( )。描述文本框将出现。
- 在文本框上方,选择 富文本。
- 进行更改,然后选择 保存。
将任务提升为 issue
先决条件:
- 您必须至少拥有项目的 Planner 角色。
将任务提升为 issue:
-
在左侧边栏,选择 搜索或跳转 并找到您的项目。
-
选择 规划 > Issues,然后选择您的 issue 进行查看。
-
在 issue 描述中,在 子项 部分,选择您要编辑的任务。 任务窗口将打开。
-
取消链接父 issue 并提升任务:在任务窗口中,在单独的评论中使用这两个 快速操作:
/remove_parent/promote_to issue
任务将转换为 issue 并获得带有 /issues/ 的新 URL。
带有 /work_items/ 的先前 URL 仍然有效。
将任务转换为其他项类型
将任务转换为其他项类型,例如:
- Issue
- Objective(目标)
- Key result(关键结果)
如果目标类型不支持原始类型的所有字段,更改类型可能会导致数据丢失。
先决条件:
- 您要转换的任务不能分配有父项。
将任务转换为其他项类型:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues。
- 在 issue 列表中,找到您的任务。
- 可选。如果任务已分配父 issue,请移除它。
在任务中添加带有
/remove_parent快速操作的评论。 - 在右上角,选择 更多操作( ),然后选择 更改类型。
- 选择所需的项类型。
- 如果满足所有条件,选择 更改类型。
或者,您可以在评论中使用 /type 快速操作,后跟
issue、objective 或 key result。
从 issue 中移除任务
先决条件:
- 您必须至少拥有项目的 Guest 角色。
您可以从 issue 中移除任务。任务不会被删除,但两者不再关联。 无法再次将它们关联起来。
从 issue 中移除任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要移除的任务旁边的选项菜单( )。
- 选择 移除任务。
删除任务
先决条件:
- 您必须满足以下条件之一:
- 是任务的作者并且至少拥有项目的 Guest 角色。
- 拥有项目的 Planner 或 Owner 角色。
删除任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务。
- 在任务窗口中,在选项菜单( )中,选择 删除任务。
- 选择 确定。
重新排序任务
先决条件:
- 您必须至少拥有项目的 Planner 角色。
默认情况下,任务按创建日期排序。 要重新排序,请拖动它们。
更改状态
- 版本:Premium, Ultimate
- 提供:GitLab.com, GitLab Self-Managed, GitLab Dedicated
此功能的可用性由功能标志控制。 有关更多信息,请查看历史记录。
您可以为任务分配状态以跟踪其在工作流程中的进度。状态提供比基本的开/关状态更细粒度的跟踪,允许您使用特定的阶段,如 进行中、已完成 或 不做。
有关状态的更多信息,包括如何配置自定义状态,请参见 状态。
先决条件:
- 您必须至少拥有项目的 Planner 角色,是任务的作者,或被分配到任务。
更改任务状态:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的任务进行查看。
- 在右侧边栏的 状态 部分,选择 编辑。
- 从下拉列表中选择状态。
任务状态会立即更新。
您还可以使用 /status 快速操作 设置状态。
为任务分配用户
要显示谁负责任务,您可以为任务分配用户。
GitLab Free 用户每个任务可以分配一个用户。 GitLab Premium 和 Ultimate 用户可以将多个用户分配到单个任务。 另请参见 issues 的多个指派人。
先决条件:
- 您必须至少拥有项目的 Planner 角色。
更改任务指派人:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 指派人 旁边,选择 添加指派人。
- 从下拉列表中选择要添加为指派人的用户。
- 选择下拉列表外的任何区域。
为任务分配标签
先决条件:
- 您必须至少拥有项目的 Planner 角色。
为任务添加 标签:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。任务窗口将打开。
- 在 标签 旁边,选择 添加标签。
- 从下拉列表中选择要添加的标签。
- 选择下拉列表外的任何区域。
设置开始和截止日期
您可以在任务上设置 开始和截止日期。
先决条件:
- 您必须至少拥有项目的 Planner 角色。
您可以在任务上设置开始和截止日期,以显示工作何时开始和结束。
设置截止日期:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 如果任务在 截止日期 旁边已有截止日期,请选择它。否则,选择 添加截止日期。
- 在日期选择器中,选择所需的截止日期。
设置开始日期:
-
在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
-
如果任务在 开始日期 旁边已有开始日期,请选择它。否则,选择 添加开始日期。
-
在日期选择器中,选择所需的截止日期。
截止日期必须与开始日期相同或晚于开始日期。 如果您选择的开始日期晚于截止日期,则截止日期将更改为同一天。
将任务添加到里程碑
您可以将任务添加到 里程碑。 查看任务时,您可以看到里程碑标题。 如果您为已属于里程碑的 issue 创建任务, 新任务将继承该里程碑。
先决条件:
- 您必须至少拥有项目的 Planner 角色。
将任务添加到里程碑:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 里程碑 旁边,选择 添加到里程碑。 如果任务已属于里程碑,下拉列表将显示当前里程碑。
- 从下拉列表中选择要与任务关联的里程碑。
设置任务权重
- 版本:Premium, Ultimate
- 提供:GitLab.com, GitLab Self-Managed, GitLab Dedicated
先决条件:
- 您必须至少拥有项目的 Reporter 角色。
您可以在每个任务上设置权重以显示其需要多少工作量。 此值仅在查看任务时可见。
设置任务的 issue 权重:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 权重 旁边,选择 编辑。
- 输入一个完整的正数。
- 选择 应用 或按 Enter。
将任务添加到迭代
- 版本:Premium, Ultimate
您可以将任务添加到 迭代。 仅在查看任务时,您可以看到迭代标题和周期。
先决条件:
- 您必须至少拥有项目的 Reporter 角色。
将任务添加到迭代:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 迭代 旁边,选择 添加到迭代。
- 从下拉列表中选择要与任务关联的迭代。
估算和跟踪花费时间
您可以估算和跟踪在任务上花费的时间。
有关更多信息,请参见 时间跟踪。
防止使用"阅读更多"截断描述
如果任务描述很长,GitLab 只会显示部分内容。 要查看完整描述,您必须选择 阅读更多。 这种截断使得无需滚动冗长文本即可找到页面上的其他元素。
更改是否截断描述:
- 在任务上,在右上角,选择 更多操作( )。
- 根据您的偏好切换 截断描述。
此设置会被记住,并影响所有 issues、任务、epics、objectives 和 key results。
隐藏右侧边栏
任务属性在描述右侧的边栏中显示(空间允许时)。 要隐藏边栏并为描述增加空间:
- 在任务上,在右上角,选择 更多操作( )。
- 选择 隐藏边栏。
此设置会被记住,并影响所有 issues、任务、epics、objectives 和 key results。
再次显示边栏:
- 重复前面的步骤并选择 显示边栏。
查看任务系统备注
您可以查看与任务相关的所有系统备注。默认情况下,它们按 最早优先 排序。 您可以随时将排序顺序更改为 最新优先,此设置会在会话间保持。 除了默认的 所有活动 外,您还可以按 仅评论 和 仅历史 过滤活动,此设置也会在会话间保持。
评论和线程
您可以在任务中添加 评论 和回复线程。
复制任务引用
要在 GitLab 的其他地方引用任务,您可以使用其完整 URL 或短引用,格式为
命名空间/项目名称#123,其中 命名空间 是组或用户名。
复制任务引用到剪贴板:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您的任务。
- 在右上角,选择垂直省略号( ),然后选择 复制引用。
现在您可以将引用粘贴到另一个描述或评论中。
有关任务引用的更多信息,请参见 GitLab 风格 Markdown。
复制任务电子邮件地址
您可以通过发送电子邮件在任务中创建评论。 向此地址发送电子邮件会创建一个包含邮件正文的评论。
有关通过发送电子邮件创建评论和必要配置的更多信息,请参见 通过发送电子邮件回复评论。
复制任务的电子邮件地址:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在右上角,选择垂直省略号( ),然后选择 复制任务电子邮件地址。
设置 issue 作为父项
先决条件:
- 您必须至少拥有项目的 Guest 角色。
- issue 和任务必须属于同一项目。
将 issue 设置为任务的父项:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您要编辑的任务标题。 任务窗口将打开。
- 在 父项 旁边,从下拉列表中选择要添加的父项。
- 选择下拉列表外的任何区域。
要移除任务的父项, 在 父项 旁边,选择下拉列表,然后选择 取消分配。
保密任务
保密任务是仅对具有 足够权限 的项目成员可见的任务。 您可以使用保密任务来保持安全漏洞的私密性,或防止意外信息泄露。
使任务保密
默认情况下,任务是公开的。 您可以在创建或编辑任务时使其保密。
先决条件:
- 您必须至少拥有项目的 Reporter 角色。
- 如果任务有非保密的父 issue,并且您想使 issue 保密, 您必须首先使所有子任务保密。 保密 issue 只能有保密的子任务。
在新任务中
创建新任务时,文本区域下方有一个复选框,用于将任务标记为保密。
选中该复选框并选择 创建任务。
在现有任务中
更改现有任务的保密性:
- 打开任务。
- 在右上角,选择垂直省略号( )。
- 选择 开启保密性。
谁可以查看保密任务
当任务被设为保密时,只有至少拥有项目 Reporter 角色的用户才能访问该任务。 拥有 Guest 或 最小权限 角色的用户无法访问 该任务,即使他们在更改之前曾积极参与。
但是,拥有 Guest 角色 的用户可以创建保密任务,但只能查看自己创建的任务。
拥有 Guest 角色或非成员的用户如果被分配到任务,可以读取保密任务。 当 Guest 用户或非成员从保密任务中被取消分配时,他们将无法再查看它。
对于没有足够权限的用户,保密任务在搜索结果中被隐藏。
保密任务指示器
保密任务在几个方面与普通任务视觉上不同。 在列出任务的地方,您可以看到保密任务旁边有保密( )图标。
如果您没有 足够的权限, 您根本看不到保密任务。
同样,在任务内部,您可以在面包屑旁边看到保密( )图标。
从普通到保密以及反之的每次更改,都会在任务的评论中通过系统备注指示,例如:
- Jo Garcia 5 分钟前将 issue 设为保密
- Jo Garcia 刚刚将 issue 设为对所有人可见
锁定讨论
- 状态:Beta
此功能的可用性由功能标志控制。 有关更多信息,请查看历史记录。 此功能可用于测试,但尚未准备好用于生产环境。
您可以防止在任务中进行公开评论。 当您这样做时,只有项目成员可以添加和编辑评论。
先决条件:
- 您必须至少拥有 Reporter 角色。
锁定任务:
- 在右上角,选择垂直省略号( )。
- 选择 锁定讨论。
系统备注将添加到页面详细信息中。
如果任务在讨论锁定时被关闭,那么在讨论解锁之前您无法重新打开它。
两列布局
- 状态:Beta
此功能的可用性由功能标志控制。 有关更多信息,请查看历史记录。 此功能可用于测试,但尚未准备好用于生产环境。
启用后,任务使用两列布局,类似于 issues。 描述和线程在左侧,属性(如标签或指派人)在右侧。
此功能处于 beta 阶段。 如果您发现错误,请在反馈 issue 中评论。
任务中的关联项
关联项是双向关系,并在表情反应下方的区块中显示。您可以在同一项目中将 objective、key result 或任务相互关联。
只有当用户可以同时查看两个项目时,关系才会在 UI 中显示。
添加关联项
先决条件:
- 您必须至少拥有项目的 Guest 角色。
将项关联到任务:
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您的任务。
- 在任务的 关联项 部分, 选择 添加。
- 选择两个项之间的关系。可以是:
- 关联到
- 阻塞
- 被阻塞
- 输入项的搜索文本、URL 或其引用 ID。
- 当您添加完所有要关联的项后,选择搜索框下方的 添加。
添加完所有关联项后,您可以看到它们被分类,以便更好地可视化理解其关系。
移除关联项
先决条件:
- 您必须至少拥有项目的 Guest 角色。
- 在左侧边栏,选择 搜索或跳转 并找到您的项目。
- 选择 规划 > Issues,然后选择您的 issue 进行查看。
- 在 issue 描述中,在 子项 部分,选择您的任务。
- 在任务的 关联项 部分,在每个项旁边,选择垂直 省略号( )然后选择 移除。
由于是双向关系,关系不再出现在任一项中。
添加合并请求并自动关闭任务
您可以设置任务在合并请求合并时关闭。
先决条件:
- 您必须至少拥有包含合并请求的项目的 Developer 角色。
- 您必须至少拥有包含任务的项目 Reporter 角色。
- 编辑您的合并请求。
- 在 描述 框中,找到并添加任务。
- 使用您用于将合并请求添加到 issue 的 关闭模式。
- 如果您的任务与合并请求在同一项目中,您可以通过键入 # 后跟任务 ID 或标题来搜索您的任务。
- 如果您的任务在不同的项目中,打开任务时,从浏览器复制 URL 或 通过在右上角选择垂直省略号( )然后 复制引用 来复制任务引用。
合并请求现在将在主体中,在 开发 部分可见。
您必须使用确切的关闭模式将合并请求添加到任务。其他文本不起作用。
如果您的项目设置中启用了 自动关闭 issue,那么当以下任一情况发生时,任务将自动关闭:
- 添加的合并请求被合并。
- 提交带有关闭模式的任务的提交被提交到项目的默认分支。