议题可用于跟踪漏洞、增强功能或其他请求。 有关详细信息,请参阅“关于议题”。
仓库管理员可以禁用仓库的议题。 有关详细信息,请参阅“禁用议题”。
从仓库创建议题
-
在 GitHub 上,导航到存储库的主页面。
-
在存储库名称下,单击 “问题”。
-
单击“新建问题”。
-
如果你的存储库使用问题模板,请在要打开的问题类型旁边单击“开始”。
如果要打开的问题类型未包含在可用选项中,请单击“打开空白问题”。
-
在“标题”字段中键入问题标题。
-
在注释正文字段中键入问题的说明。
-
如果你是项目维护者,可以将问题分配给某人、将其添加到 project、将其与里程碑关联、设置问题类型、或应用标签。
-
完成后,单击“提交新问题”。
使用 GitHub CLI
创建议题
GitHub CLI 是用于从计算机的命令行使用 GitHub 的开源工具。 从命令行操作时,您可以使用 GitHub CLI 来节省时间并避免切换上下文。 要详细了解 GitHub CLI,请参阅“关于 GitHub CLI”。
若要创建问题,请使用 gh issue create
子命令。 若要跳过交互式提示,请添加 --body
标志和 --title
标志。
gh issue create --title "My new issue" --body "Here are more details."
您还可以指定受理人、标签、里程碑和项目。
gh issue create --title "My new issue" --body "Here are more details." --assignee @me,monalisa --label "bug,help wanted" --project onboarding --milestone "learning codebase"
从评论创建议题
您可以从议题或拉取请求中的评论打开新议题。 从评论打开议题时,该议题包含一个代码段,显示评论的原始发布位置。
-
导航到您要从中打开议题的评论。
-
在该评论中,单击 。
-
单击“新问题中的引用”。
-
使用“存储库”下拉菜单,并选择要在其中打开问题的存储库。
-
键入议题的描述性标题和正文。
-
单击“创建问题”。
-
如果你是项目维护者,可以将问题分配给某人、将其添加到 project、将其与里程碑关联、设置问题类型、或应用标签。
-
完成后,单击“提交新问题”。
从代码创建议题
您可以从文件或拉取请求的特定代码行打开新议题。 从代码打开议题时,议题包含小片段,其中显示所选代码的行或范围。 只能打开存储代码的仓库中的议题。
-
在 GitHub 上,导航到存储库的主页面。
-
找到要在议题中引用的代码:
- 要打开文件中代码相关的议题,请找到该文件。
- 要打开拉取请求中代码相关的问题,请导航到该拉取请求并单击 “已更改的文件”。 然后浏览到含有要包含在评论中的代码的文件,并单击“查看”。
-
决定是选择一行还是一个范围。
- 要选择单行代码,请单击行号以高亮显示该行。
- 要选择代码范围,请单击范围内第一行的行号以高亮显示代码行。 然后,将鼠标停在代码范围的最后一行,按 Shift,再单击行号以突出显示范围。
-
在代码范围左侧,单击 。 在下拉菜单中,单击“新问题中的引用”。
-
在“标题”字段中键入问题标题。
-
在注释正文字段中键入问题的说明。
-
如果你是项目维护者,可以将问题分配给某人、将其添加到 project、将其与里程碑关联、设置问题类型、或应用标签。
-
完成后,单击“提交新问题”。
从讨论创建议题
对存储库具有分类权限的人员可以从讨论创建议题。
从讨论创建议题时,讨论帖子的内容将自动包含在议题正文中,并且将保留所有标签。 从讨论创建议题不会将讨论转换为议题或删除现有讨论。 有关 GitHub Discussions 的详细信息,请参阅“关于讨论”。
-
在存储库或组织名称下,单击 “讨论”。
-
在讨论列表中,单击要查看的讨论。
-
在右侧边栏中,单击 “根据讨论创建问题”。
-
在“标题”字段中键入问题标题。
-
在注释正文字段中键入问题的说明。
-
如果你是项目维护者,可以将问题分配给某人、将其添加到 project、将其与里程碑关联、设置问题类型、或应用标签。
-
完成后,单击“提交新问题”。
从项目创建议题
无需离开项目即可快速创建问题。 使用按字段分组的视图时,在该组中创建问题将自动将新问题的字段设置为组的值。 例如,如果按“状态”对视图进行分组,则在“待办事项”组中创建问题时,新问题的“状态”将自动设置为“待办事项”。 有关项目的详细信息,请参阅“关于 Projects”。
-
导航到你的项目。
-
在板布局中的表、项组或列的底部,单击 。
-
单击“创建新问题”。
-
在“创建新问题”对话框顶部,选择要在其中创建新问题的存储库。
-
在存储库下拉列表下,键入新问题的标题。
-
(可选)使用标题字段下方的字段来设置代理人、标签和里程碑,并将新问题添加到其他项目。
-
(可选)键入问题的说明。
-
(可选)如果要创建更多问题,请选择“创建更多”,创建问题时对话框将重新打开。
-
单击“创建”。
从任务列表项创建议题
在议题中,您可以使用任务列表将工作分解为较小的任务,并跟踪要完成的完整工作集。 如果任务需要进一步跟踪或讨论,您可以通过在任务上方悬停并单击任务右上角的 将任务转换为议题。 有关详细信息,请参阅“关于任务列表”。
从 URL 查询创建议题
您可以使用查询参数打开议题。 查询参数是 URL 中可以定制的部分,用于在 GitHub 上共享特定的网页视图,如搜索过滤结果或议题模板。 要创建自己的查询参数,必须将键与值进行配对。
提示:还可创建可通过默认标签、代理人和问题标题打开的问题模板。 有关详细信息,请参阅“使用模板鼓励有用的议题和拉取请求”。
必须具有适当的权限才可执行使用相关查询参数的操作。 例如,必须具有向问题添加标签的权限才可使用 labels
查询参数。 有关详细信息,请参阅“组织的存储库角色”。
如果使用查询参数创建了无效的 URL ,或者没有适当的权限,则 URL 将返回 404 Not Found
错误页面。 如果创建的 URL 超过服务器限制,URL 将返回 414 URI Too Long
错误页面。
查询参数 | 示例 |
---|---|
title | https://github.com/octo-org/octo-repo/issues/new?labels=bug&title=New+bug+report 创建标签为“bug”和标题为“新 bug 报告”的问题。 |
body | https://github.com/octo-org/octo-repo/issues/new?title=New+bug+report&body=Describe+the+problem. 在问题正文中创建标题为“新 bug 报告”的问题和评论“描述问题”。 |
labels | https://github.com/octo-org/octo-repo/issues/new?labels=help+wanted,bug 创建标签为“所需帮助”和“bug”的问题。 |
milestone | https://github.com/octo-org/octo-repo/issues/new?milestone=testing+milestones 创建里程碑为“测试里程碑”的问题。 |
assignees | https://github.com/octo-org/octo-repo/issues/new?assignees=octocat 创建问题并将其分配给 @octocat。 |
projects | https://github.com/octo-org/octo-repo/issues/new?title=Bug+fix&projects=octo-org/1 创建标题为“Bug 修复”的问题,并将其添加到组织的项目 1。 |
template | https://github.com/octo-org/octo-repo/issues/new?template=issue_template.md 在问题正文中使用模板创建问题。 template 查询参数适用于在存储库根目录 docs/ 或 .github/ 的 ISSUE_TEMPLATE 子目录中存储的模板。 有关详细信息,请参阅“使用模板鼓励有用的议题和拉取请求”。 |
还可使用 URL 查询参数填充在问题表单模板中定义的自定义文本字段。 问题表单字段的查询参数也可以传递给问题模板选择器。 有关详细信息,请参阅“GitHub 表单架构的语法”。
从 code scanning 警报创建议题
注意: 议题中 code scanning 警报的跟踪目前为 公共预览版,可能随时更改。
此功能支持使用 GitHub Actions 在本机运行分析,或使用现有 CI/CD 基础结构以及第三方 code scanning 工具在外部运行分析,但不支持第三方跟踪工具。
如果要使用问题来跟踪和确定工作优先级,则可以使用问题来跟踪 code scanning 警报。 有关创建问题以跟踪 code scanning 警报的详细信息,请参阅“使用任务列表跟踪问题中的代码扫描警报”。