Skip to main content

为仓库配置议题模板

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

您可以为组织或个人帐户的议题模板创建默认议题模板和默认配置文件。 更多信息请参阅“创建默认社区健康文件”。

创建议题模板

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

创建议题表单

注意: 议题表单目前仅在 GitHub.com 的公共存储库中测试。

通过议题表单,您可以创建具有可自定义 Web 表单字段的议题模板。 您可以通过在仓库中使用议题表单鼓励贡献者包含特定的结构化信息。 议题表单使用 GitHub 表单架构以 YAML 编写。 更多信息请参阅“GitHub 表单架构的语法”。 如果您是 YAML 的新用户并想要了解更多信息,请参阅“Y 分钟了解 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. 这将自动格式化为代码,因此无需背板。
      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. 将文件提交到仓库的默认分支。 更多信息请参阅“创建新文件”。

配置模板选择器

您可以通过添加一个 config.yml 文件到 .github/ISSUE_TEMPLATE 文件夹,来自定义在仓库中创建新议题时所看到的议题模板选择器。

您可以通过将 blank_issues_enabled 设置为 false,鼓励贡献者使用议题模板。 如果您将 blank_issues_enabled 设置为 true,人们可以选择打开空白议题。

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

如果您愿意在 GitHub Enterprise Cloud 之外接收某些报告,您可以使用 contact_links 将用户引导到外部站点。

以下是 config.yml 文件的一个例子:

YAML
blank_issues_enabled: false
contact_links:
  - name: GitHub Community Support
    url: https://github.community/
    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 上,导航到仓库的主页面。
  2. 在文件列表上方,使用 Add file(添加文件)下拉菜单,单击 Create new file(创建新文件)"添加文件"下拉菜单中的"创建新文件"按钮
  3. 在文件名字段中,键入 .github/ISSUE_TEMPLATE/config.yml配置文件名
  4. 在新文件的正文中,键入配置文件的内容。 配置文件内容
  5. 在页面底部,输入一条简短、有意义的提交消息,描述您对文件所作的更改。 您可以在提交消息中将提交归于多个作者。 更多信息请参阅“创建有多个合作作者的提交”。 有关更改的提交消息
  6. 在提交消息字段下面,确定是要将提交添加到当前分支还是新分支。 如果当前分支是默认分支,则应选择为提交创建新分支,然后创建拉取请求。 更多信息请参阅“创建新的拉取请求”。 提交分支选项
  7. 单击 Propose new file(提议新文件)提议新文件按钮

延伸阅读