创建问题和拉取请求模板

本页面介绍如何为 Secure Source Manager 创建和配置问题模板和 pull 请求模板。

所需的角色

如需获得处理问题和拉取请求模板所需的权限,请让您的管理员为您授予以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。

如需了解如何授予 Secure Source Manager 角色, 请参阅 使用 IAM 进行访问权限控制向用户授予实例访问权限

模板概览

借助问题模板和拉取请求模板,您可以标准化贡献者向代码库提供的信息。问题模板提供预定义的选项,用户可以根据其提交的问题类型和可用的模板类型进行选择。拉取请求模板会自动应用于所有拉取请求,确保向代码库提供一致的贡献。

任何有权在代码库中合并文件的人都可以创建模板。

创建问题模板

借助 Secure Source Manager,您可以使用代码库中多个位置的 Markdown 文件定义问题模板。您可以创建多个问题模板以用于不同的用途。例如,您可能希望为报告 bug 和提交功能请求提供单独的模板。

  1. 创建一个以以下信息开头的模板,格式必须完全一致:

     ---
     name: TEMPLATE_NAME
     about: Insert description of template
     title: Placeholder title for the new issue when it is created
     ---
    
  2. 提供名称和说明。这些是必需的,并且会在“New Issues”(新问题)页面的界面中使用。

  3. 您可以选择性地添加一个标题,该标题在创建新问题时用作占位符标题。

  4. 在必需的内容下方,添加您希望在问题说明中显示的所有信息,以帮助用户提供必要的信息。

  5. 将模板另存为 Markdown 文件,并将其保存在以下某个位置:

    • /.securesourcemanager/ISSUE_TEMPLATES/
    • /.securesourcemanager/issue_templates/

默认问题模板

Secure Source Manager 还支持定义单个默认模板。此模板应在以下某个位置定义:

  • /.securesourcemanager/ISSUE_TEMPLATE.md
  • /.securesourcemanager/issue_template.md

当用户创建新问题时,Secure Source Manager 会提示用户选择模板(如果有可用模板),或选择默认模板。如果没有指定的默认模板,则不会在新问题中预先填充任何内容。

问题模板示例

模板的前 5 行必须遵循以下示例中概述的惯例。任何其他信息都可以采用 Markdown 格式,以满足问题类型的需求。

---
name: Bug #Used as UI element for the button on the New Issues page
about: Use this template to submit a new bug #Used as description text on the New Issues page
title: [BUG]: <Describe issue> #Used as placeholder name for newly created issue
---
# Description

# Expected result

# Actual result

# Steps to reproduce
1.
2.

# Environment
-OS:
-Software version:
-Screenshots:

创建拉取请求模板

  1. 创建一个以以下信息开头的模板,格式必须完全一致:

     ---
     title: "[PR]: <Insert title>"
     ---
    
  2. 在必需的内容下方,添加您希望在问题说明中显示的所有信息,以帮助用户提供必要的信息。如需了解详情,请参阅下一部分中的示例模板。

  3. 将模板另存为 Markdown 文件,并将其保存在代码库内的以下某个位置:

    • /.securesourcemanager/PULL_REQUEST_TEMPLATE.md
    • /.securesourcemanager/pull_request_template.md

当您创建新的拉取请求时,Secure Source Manager 会检查任何已定义的位置中是否存在模板并加载该模板。如果您在模板中添加了 title 信息,则该信息会自动填充到新的拉取请求中,以便为用户提供要遵循的已定义格式。您添加的任何其他信息都会添加到拉取请求说明中,以供提交用户更新。

pull 请求模板示例

模板的前 3 行必须遵循以下示例中显示的惯例。后面的所有内容都是选项,应有助于您的用户创建遵循您的惯例的 pull 请求。

---
title: "[PR]: <Insert title>"
---
<!-- Thank you for your contribution! -->

<!-- Include if applicable: -->
Fixes: #nnn <!-- tracking issues that this PR will close -->
**Related**: _Relevant tracking issues, for context_
**Merge before/after**: _Dependent or prerequisite PRs_

**Description**
<!-- Describe your changes here. The more detail, the easier the review! -->

**User facing changes (remove if N/A)**
<!-- Describe any user facing changes this PR introduces. -->
<!-- "Before" and "After" sections work great - bonus points for screenshots! -->
<!-- Be sure all docs have been updated as well! -->

**Follow-up Work (remove if N/A)**
<!-- Mention any related follow up work to this PR. -->

后续步骤