评论和主题

极狐GitLab 鼓励通过评论、主题和代码建议进行交流。

有两种类型的评论:

  • 标准评论。
  • 主题中的评论,可以被解决

在评论中,您可以输入 Markdown 并使用快速操作

您可以在提交差异评论中建议代码更改,用户可以通过用户界面接受。

可以添加评论的地方

您可以在以下位置创建评论:

  • 提交差异
  • 提交
  • 设计
  • 史诗
  • 议题
  • 合并请求
  • 代码片段

每个对象最多可以有 5,000 条评论。

提及

您可以在实例中使用 @username@groupname 提及用户或群组(包括子组)。所有提到的用户都会收到待办事项和电子邮件的通知。 用户可以在通知设置中自行更改此设置。

您可以快速查看哪些评论涉及您,因为您自己(当前登录的用户)的提及以不同颜色突出显示。

避免在议题和合并请求中提及 @all,因为它会向该项目组的所有成员发送电子邮件通知。这可能会被认为是垃圾邮件。您可以在群组的设置中禁用通知和提及。

向合并请求差异添加评论

您可以向合并请求差异添加注释。 这些评论仍然存在,即使您:

  • 变基后强制推送。
  • 修改提交。

添加提交差异评论:

  1. 要选择特定提交,在合并请求上,选择 提交 选项卡,选择提交消息。要查看最新提交,请选择 变更 选项卡。
  2. 通过您要评论的行,将鼠标悬停在行号上并选择 评论 ()。您可以通过拖动 评论 () 图标来选择多行。
  3. 输入您的评论并选择 启动评审立即添加评论

评论显示在合并请求的 讨论 选项卡上。

该评论不会显示在您项目的 仓库 > 提交 页面上。

note当您的评论包含对合并请求中包含的提交的引用时,它会自动转换为当前合并请求上下文中的链接。例如,28719b171a056960dfdc0012b625d0b47b123196 变成 https://gitlab.example.com/example-group/example-project/-/merge_requests/12345/diffs?commit_id=28719b171a056960dfdc0012b625d0b47b123196

添加评论到提交

您可以向特定提交添加评论和主题。

  1. 在顶部栏上,选择 菜单 > 项目 并找到您的项目。
  2. 在左侧边栏上,选择 仓库 > 主题
  3. 在提交下方的 评论 字段中,输入评论。
  4. 选择 评论 或选择向下箭头 () 以选择 开启主题
caution如果强制推送后提交 ID 发生更改,则以这种方式创建的主题将丢失。

添加评论到图片

在合并请求和提交详细信息视图中,您可以向图像添加评论。 这个评论也可以是一个主题。

  1. 将鼠标悬停在图像上。
  2. 选择您要评论的位置。

图像上会显示一个图标并显示一个评论字段。

通过发送邮件回复评论

如果您配置了”通过电子邮件回复”,您可以通过发送电子邮件来回复评论。

  • 当您回复标准评论时,会创建另一个标准评论。
  • 当您回复主题评论时,会在主题中创建回复。
  • 当您向议题电子邮件地址发送电子邮件时,它会创建标准评论。

您可以在电子邮件回复中使用 Markdown 和 快速操作

编辑评论

您可以随时编辑自己的评论。 具有维护者角色或更高级别的任何人也可以编辑其他人发表的评论。

编辑评论:

  1. 在评论上,选择 编辑评论 ()。
  2. 进行编辑。
  3. 选择 保存修改

编辑评论以添加提及

默认情况下,当您提及用户时,系统会为他们创建一个待办事项,并向他们发送一封通知电子邮件

如果您编辑现有评论,添加以前不存在的用户提及,极狐GitLab:

  • 为提到的用户创建一个待办事项。
  • 不发送通知电子邮件。

通过锁定议题来阻止评论

您可以在议题或合并请求中阻止公开评论。当您这样做时,只有项目成员可以添加和编辑评论。

先决条件:

  • 在合并请求中,您必须至少具有开发者角色。
  • 在议题中,您必须至少具有报告者角色。
  1. 在右侧边栏的 锁定议题锁定合并请求 旁边,选择 编辑
  2. 在确认对话框中,选择 锁定

评论被添加到页面详细信息中。

如果议题或合并请求被锁定并关闭,您将无法重新打开它。

将评论标记为机密

  • 引入于 13.9 版本,在名为 confidential_notes 的功能标志后默认禁用。
  • 变更于 14.10 版本:您只能将议题和史诗中的评论标记为机密。以前,也可以为在合并请求和片段中的评论这么做。
在自助管理实例上,默认情况下此功能不可用。要使其可用,请让管理员启用名为 confidential_notes 的功能标志。 在 SaaS 上,此功能不可用。您不应将此功能用于生产环境。

您可以将在议题或史诗中的评论保密,以便仅对您(评论用户)和至少具有报告者角色的项目成员可见。

请记住:

  • 您只能在创建评论时将其标记为机密。
  • 您不能更改现有评论的机密性。
  • 对评论的回复使用与原始评论相同的保密性。

先决条件:

  • 您必须是以下角色之一:
    • 至少具有项目的报告者角色。
    • 议题的指派人。
    • 议题作者。

要将评论标记为机密:

  1. 开始添加新评论。
  2. 在评论下方,选中 将此评论保密 复选框。
  3. 选择 评论

Confidential comments

您还可以将整个议题保密

只显示评论

对于有很多评论的议题和合并请求,您可以过滤页面以仅显示评论。

  1. 打开合并请求的 讨论 选项卡,或者史诗或议题的 概览 选项卡。
  2. 在页面右侧,从过滤器中选择:
    • 显示所有活动:显示所有用户评论和系统注释(议题更新、来自其他议题的提及、对描述的更改等)。
    • 仅显示评论:仅显示用户评论。
    • 仅显示历史记录:仅显示活动记录。

Notes filters dropdown options

系统保存您的偏好设置,因此当您从您登录的任何设备再次访问同一页面时,它仍然存在。

查看描述更改历史记录

您可以看到对历史记录中列出的描述所做的更改。

要比较更改,请选择与以前的版本比较

更改活动排序顺序

您可以颠倒默认顺序,并与按最近项目排序的活动提要进行交互。您的偏好设置保存在本地存储中,并自动应用于您查看的每个议题、合并请求或史诗。

要更改活动排序顺序:

  1. 选择 最早的(或 最新的)下拉列表。
  2. 选择最旧或最新的项目首先显示。

将议题指派给评论用户

您可以将议题指派给发表评论的用户。

  1. 在评论中,选择 更多操作 () 菜单。
  2. 选择 分配给评论用户Assign to commenting user
  3. 要取消分配评论者,请再次选择该按钮。

通过回复标准评论创建主题

当您回复标准评论时,您就创建了一个主题。

先决条件:

  • 您必须至少具有 Guest 角色。
  • 您必须处于议题、合并请求或史诗中。不支持提交和代码片段中的主题。

要通过回复评论来创建主题:

  1. 在评论的右上角,选择 回复评论 ()。

    Reply to comment button

    显示回复区域。

  2. 输入您的回复。
  3. 选择 评论立即添加评论(取决于您在 UI 中回复的位置)。

置顶评论将转换为主题。

创建主题而不回复评论

您可以在不回复标准评论的情况下创建主题。

先决条件:

  • 您必须至少具有 Guest 角色。
  • 您必须处于议题、合并请求、提交或代码片段中。

创建线程:

  1. 输入评论。
  2. 在评论下方的 评论 按钮右侧,选择向下箭头 ()。
  3. 从列表中选择 开启主题
  4. 再次选择 开启主题

一个主题评论被创建。

Thread comment

解决一个主题

在合并请求中,您可以在想要结束对话时解决主题。

先决条件:

  • 您必须至少具有开发人员角色或者是正被审核的更改的作者。
  • 可解决主题只能添加到合并请求。它不适用于议题、提交或片段中的评论。

要解决主题:

  1. 转到主题。
  2. 执行以下操作之一:
    • 在原评论的右上角,选择 解决主题 () 图标。
    • 在最后一条回复下方的 回复 字段中,选择 解决主题
    • 在最后一条回复下方的 回复 字段中,输入文本,选中 解决主题 复选框,然后选择 立即添加评论

在页面顶部,更新了未解决主题的数量:

Count of unresolved threads

将合并请求中所有未解决的主题移至议题

如果合并请求中有多个未解决的主题,您可以创建一个议题来分别解决它们。在合并请求中,在页面顶部,选择 创建议题来解决所有主题 ():

Open new issue for all unresolved threads

所有主题都标记为已解决,并添加了从合并请求到新创建议题的链接。

将合并请求中的一个未解决的主题移至议题

如果您在合并请求中有一个特定的未解决主题,您可以创建一个议题来单独解决它。在合并请求中,在对主题的最后回复下,在 解决主题 旁边,选择 创建议题来解决所有主题 ():

Create issue for thread

该主题被标记为已解决,并添加了从合并请求到新创建议题的链接。

除非所有主题都已解决,否则阻止合并

您可以阻止合并请求被合并,直到所有主题都得到解决。

  1. 在顶部栏上,选择 菜单 > 项目 并找到您的项目。
  2. 在左侧边栏上,选择 设置 > 通用
  3. 展开 合并请求
  4. 合并检查 下,选中 所有讨论都必须解决 复选框。
  5. 选择 保存更改

当主题过期,自动解决合并请求中的主题

您可以将合并请求设置为,在使用新推送修改行时,自动解决主题。

  1. 在顶部栏上,选择 菜单 > 项目 并找到您的项目。
  2. 在左侧边栏上,选择 设置 > 通用
  3. 展开 合并请求
  4. 合并选项 下,选中 自动解决过期的合并请求差异相关讨论 复选框。
  5. 选择 保存更改

如果推送使差异部分过期,则主题现在已解决。 未更改的行上的主题和顶级可解决主题仍未解决。