Skip to main content

为仓库配置议题模板

您可以自定义贡献者在仓库中打开新议题时可使用的模板。

可以为组织或个人帐户的问题模板创建默认问题模板和默认配置文件。 有关详细信息,请参阅创建默认社区运行状况文件

创建议题模板

  1. 在 GitHub.com 上,导航到存储库的主页。 1. 在存储库名称下,单击 “设置”。 “存储库设置”按钮
  2. 在“功能”部分的“问题”下,单击“设置模板”。 “启动模板设置”按钮
  3. 使用 Add template(添加模板)下拉菜单,单击要创建的模板类型。 “添加模板”下拉菜单
  4. 要在提交到存储库之前预览或编辑模板,请单击“预览和编辑”。 “预览和编辑”按钮
  5. 要编辑模板,请单击 ,然后在字段中键入以编辑其内容。 “问题模板编辑”按钮
  6. 要自动设置默认的议题标题、将议题分配给对仓库有读取权限的人或者对议题模板应用标签,请在“Optional additional information(可选附加信息)”下输入这些详细信息。 还可使用 YAML frontmatter 格式中的 titlelabelsassignees 将这些详细信息添加到问题模板中。 问题模板的其他信息
  7. 完成编辑和预览模板后,请单击页面右上角的“提供更改”。 “提供更改”按钮
  8. 输入提交消息,描述您的更改。 问题模板提交消息字段
  9. 在提交消息字段的下方,决定是直接将模板提交到默认分支,还是创建新分支并打开拉取请求。 有关拉取请求的详细信息,请参阅“关于拉取请求”。 选择将问题模板提交到主要的或打开的拉取请求中
  10. 单击“提交更改”。 将这些更改合并到默认分支后,贡献者在仓库中打开新议题时便可使用该模板。

创建议题表单

注意:问题表单目前为 beta 版本,仅适用于 GitHub.com 上的公共存储库。

通过议题表单,您可以创建具有可自定义 Web 表单字段的议题模板。 您可以通过在仓库中使用议题表单鼓励贡献者包含特定的结构化信息。 议题表单使用 GitHub 表单架构以 YAML 编写。 有关详细信息,请参阅“GitHub 的表单架构语法”。 如果你不熟悉 YAML 并且想要了解详细信息,请参阅“在五分钟内了解 YAML”。

要在存储库中使用问题表单,必须创建一个新文件并将它添加到存储库中的 .github/ISSUE_TEMPLATE 文件夹。

下面是议题表单配置文件的示例。

YAML
name: Bug Report
description: File a bug report
title: "[Bug]: "
labels: ["bug", "triage"]
assignees:
  - octocat
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this bug report!
  - type: input
    id: contact
    attributes:
      label: Contact Details
      description: How can we get in touch with you if we need more info?
      placeholder: ex. email@example.com
    validations:
      required: false
  - type: textarea
    id: what-happened
    attributes:
      label: What happened?
      description: Also tell us, what did you expect to happen?
      placeholder: Tell us what you see!
      value: "A bug happened!"
    validations:
      required: true
  - type: dropdown
    id: version
    attributes:
      label: Version
      description: What version of our software are you running?
      options:
        - 1.0.2 (Default)
        - 1.0.3 (Edge)
    validations:
      required: true
  - type: dropdown
    id: browsers
    attributes:
      label: What browsers are you seeing the problem on?
      multiple: true
      options:
        - Firefox
        - Chrome
        - Safari
        - Microsoft Edge
  - type: textarea
    id: logs
    attributes:
      label: Relevant log output
      description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
      render: shell
  - type: checkboxes
    id: terms
    attributes:
      label: Code of Conduct
      description: By submitting this issue, you agree to follow our [Code of Conduct](https://example.com)
      options:
        - label: I agree to follow this project's Code of Conduct
          required: true

下面是议题表单的呈现版本。 呈现的问题表单

  1. 选择要创建议题表单的仓库。 您可以使用您有写入权限的现有仓库,或者创建一个新的仓库。 有关创建存储库的详细信息,请参阅“新建存储库”。
  2. 在存储库中,创建一个名为 .github/ISSUE_TEMPLATE/FORM-NAME.yml 的文件,然后将 FORM-NAME 替换为问题表单的名称。 有关在 GitHub 上新建文件的详细信息,请参阅“新建文件”。
  3. 在新文件的正文中,键入议题表单的内容。 有关详细信息,请参阅“问题表单语法”。
  4. 将文件提交到仓库的默认分支。 有关详细信息,请参阅“新建文件”。

配置模板选择器

可通过向 .github/ISSUE_TEMPLATE 文件夹添加 config.yml 文件来自定义用户在存储库中创建新议题时看到的议题模板选择器。

你可通过将 blank_issues_enabled 设置为 false 来鼓励贡献者使用问题模板。 如果将 blank_issues_enabled 设置为 true,则用户可以选择打开空白问题。

注意:如果使用旧工作流在 .github 文件夹中手动创建 issue_template.md 文件,并在“config.yml”文件中启用空白问题,则当用户选择打开空白问题时,将使用 issue_template.md 中的模板。 如果您禁用空白议题,将永远不会使用模板。

如果你愿意在 GitHub 之外接收某些报告,可使用 contact_links 将用户引导到外部网站。

下面是“config.yml”文件的一个示例。

YAML
blank_issues_enabled: false
contact_links:
  - name: GitHub Community Support
    url: https://github.com/orgs/community/discussions
    about: Please ask and answer questions here.
  - name: GitHub Security Bug Bounty
    url: https://bounty.github.com/
    about: Please report security vulnerabilities here.

当文件合并到仓库的默认分支时,您的配置文件将自定义模板选择器。

  1. 在 GitHub.com 上,导航到存储库的主页。 1. 在文件列表上方,使用“添加文件”下拉列表,在其中单击“创建新文件” 。 “添加文件”下拉列表中的“创建新文件”
  2. 在“文件名”字段中,键入 .github/ISSUE_TEMPLATE/config.yml配置文件名
  3. 在新文件的正文中,键入配置文件的内容。 配置文件内容 1. 在页面底部,输入一条简短、有意义的提交消息,描述您对文件所作的更改。 您可以在提交消息中将提交归于多个作者。 有关详细信息,请参阅“创建具有多个共同作者的提交”。 更改的提交消息 1. 在提交消息字段下面,确定是要将提交添加到当前分支还是新分支。 如果当前分支是默认分支,则应选择为提交创建新分支,然后创建拉取请求。 有关详细信息,请参阅“创建新的拉取请求”。 提交分支选项 1. 单击“提供新文件”。 “提供新文件”按钮

延伸阅读