Issues 可用于跟踪错误、增强功能或其他请求。有关更多信息,请参阅“关于 Issues”。
存储库管理员可以禁用存储库的 Issues。有关更多信息,请参阅“禁用 Issues”。
从存储库创建 Issue
-
在 GitHub 上,导航到存储库的主页。
-
在您的存储库名称下,单击 Issues.
-
单击“**新建 Issue**”。
-
如果您的存储库使用 Issue 模板,请在您想要打开的 Issue 类型旁边,单击“**开始**”。
如果可用的选项中不包含您想要打开的 Issue 类型,请单击“**打开空白 Issue**”。
-
在“标题”字段中,键入 Issue 的标题。
-
在评论正文字段中,键入 Issue 的描述。
-
如果您是项目维护者,则可以将 Issue 分配给某人、将其添加到项目、将其与里程碑关联、设置 Issue 类型或应用标签。
-
完成后,单击“**提交新的 Issue**”。
使用 GitHub CLI 创建 Issue
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"
从评论中创建问题
您可以在问题或拉取请求中的评论中打开一个新问题。当您从评论中打开问题时,问题中会包含一个代码段,显示评论最初发布的位置。
-
导航到您要从中打开问题的评论。
-
在该评论中,点击.
-
点击在新问题中引用。
-
使用“存储库”下拉菜单,然后选择要在其中打开问题的存储库。
-
为问题键入描述性标题和正文。
-
点击创建问题。
-
如果您是项目维护者,则可以将 Issue 分配给某人、将其添加到项目、将其与里程碑关联、设置 Issue 类型或应用标签。
-
完成后,单击“**提交新的 Issue**”。
从代码中创建问题
您可以从文件或拉取请求中特定行或代码行打开一个新问题。当您从代码中打开问题时,问题中会包含一个代码段,显示您选择的代码行或代码范围。您只能在存储代码的同一存储库中打开问题。
-
在 GitHub 上,导航到存储库的主页。
-
找到您要在问题中引用的代码
- 要打开有关文件中的代码的问题,请导航到该文件。
- 要打开有关拉取请求中代码的问题,请导航到拉取请求并点击 已更改的文件。然后,浏览到包含要包含在评论中的代码的文件,并点击查看。
-
选择是选择单行还是一个范围。
- 要选择单行代码,请点击行号以突出显示该行。
- 要选择一个代码范围,请点击范围中第一行的编号以突出显示该行代码。然后,将鼠标悬停在代码范围的最后一行上,按 Shift,然后点击行号以突出显示该范围。
-
在代码范围左侧,点击。在下拉菜单中,点击在新问题中引用。
-
在“标题”字段中,键入 Issue 的标题。
-
在评论正文字段中,键入 Issue 的描述。
-
如果您是项目维护者,则可以将 Issue 分配给某人、将其添加到项目、将其与里程碑关联、设置 Issue 类型或应用标签。
-
完成后,单击“**提交新的 Issue**”。
从讨论中创建问题
具有存储库分类权限的人员可以从讨论中创建问题。
当您从讨论中创建问题时,讨论帖子的内容将自动包含在问题正文中,并且任何标签都将保留。从讨论中创建问题不会将讨论转换为问题或删除现有讨论。有关 GitHub 讨论的更多信息,请参阅“关于讨论”。
-
在您的存储库或组织名称下,点击 讨论.
-
在讨论列表中,点击您要查看的讨论。
-
在右侧边栏中,点击 从讨论创建问题.
-
在“标题”字段中,键入 Issue 的标题。
-
在评论正文字段中,键入 Issue 的描述。
-
如果您是项目维护者,则可以将 Issue 分配给某人、将其添加到项目、将其与里程碑关联、设置 Issue 类型或应用标签。
-
完成后,单击“**提交新的 Issue**”。
从项目中创建问题
您可以快速创建问题,而无需离开您的项目。当使用按字段分组的视图时,在该组中创建问题会自动将新问题的字段设置为该组的值。例如,如果您按“状态”对视图进行分组,当您在“待办事项”组中创建问题时,新问题的“状态”将自动设置为“待办事项”。有关项目的更多信息,请参阅“关于项目”。
-
导航到您的项目。
-
在表格底部、项目组或看板布局中的列中,点击.
-
点击创建新问题。
-
在“创建新问题”对话框的顶部,选择要创建新问题的存储库。
-
在存储库下拉菜单下方,键入新问题的标题。
-
可选地,使用标题字段下方的字段设置分配者、标签和里程碑,并将新问题添加到其他项目。
-
可选地,键入问题的描述。
-
可选地,如果您想创建更多问题,请选择创建更多,并在创建问题时重新打开对话框。
-
点击创建。
从任务列表项创建问题
在问题中,您可以使用任务列表将工作分解成较小的任务,并跟踪所有工作的完成情况。如果任务需要进一步跟踪或讨论,您可以通过将鼠标悬停在任务上并点击在任务的右上角。有关更多信息,请参阅“关于任务列表”。
从 URL 查询创建问题
您可以使用查询参数打开问题。查询参数是 URL 的可选部分,您可以自定义这些参数以共享特定的网页视图,例如搜索筛选器结果或 GitHub 上的问题模板。要创建您自己的查询参数,您必须匹配键值对。
提示
您还可以创建使用默认标签、分配者和问题标题打开的问题模板。有关更多信息,请参阅“使用模板鼓励有用的问题和拉取请求”。
您必须具有执行任何操作的适当权限才能使用等效的查询参数。例如,您必须具有向问题添加标签的权限才能使用 labels
查询参数。有关更多信息,请参阅“组织的存储库角色”。
如果您使用查询参数创建无效的 URL,或者如果您没有适当的权限,则该 URL 将返回 404 未找到
错误页面。如果您创建的 URL 超过服务器限制,则该 URL 将返回 414 URI 太长
错误页面。
查询参数 | 示例 |
---|---|
标题 | https://github.com/octo-org/octo-repo/issues/new?labels=bug&title=New+bug+report 创建一个带有“bug”标签和“新错误报告”标题的问题。 |
正文 | https://github.com/octo-org/octo-repo/issues/new?title=New+bug+report&body=Describe+the+problem. 创建一个标题为“新错误报告”并在问题正文中包含“描述问题”的评论的问题。 |
标签 | https://github.com/octo-org/octo-repo/issues/new?labels=help+wanted,bug 创建一个带有“需要帮助”和“bug”标签的问题。 |
里程碑 | https://github.com/octo-org/octo-repo/issues/new?milestone=testing+milestones 创建一个带有“测试里程碑”里程碑的问题。 |
分配者 | https://github.com/octo-org/octo-repo/issues/new?assignees=octocat 创建一个问题并将其分配给 @octocat。 |
项目 | https://github.com/octo-org/octo-repo/issues/new?title=Bug+fix&projects=octo-org/1 创建一个标题为“错误修复”的问题并将其添加到组织的项目 1。 |
模板 | https://github.com/octo-org/octo-repo/issues/new?template=issue_template.md 在问题正文中使用模板创建一个问题。template 查询参数与存储在存储库根目录、docs/ 或 .github/ 目录中的 ISSUE_TEMPLATE 子目录中的模板一起使用。有关更多信息,请参阅“使用模板鼓励有用的问题和拉取请求”。 |
您还可以使用 URL 查询参数填充在问题表单模板中定义的自定义文本字段。问题表单字段的查询参数也可以传递给问题模板选择器。有关更多信息,请参阅“GitHub 表单架构的语法”。
从代码扫描警报创建问题
注意
在问题中跟踪代码扫描警报处于公开预览阶段,可能会发生更改。
此功能支持使用 GitHub Actions 或使用现有 CI/CD 基础设施以及第三方代码扫描工具本地运行分析,但不支持第三方跟踪工具。
如果您使用问题来跟踪和优先处理您的工作,则可以使用问题来跟踪代码扫描警报。有关创建问题以跟踪代码扫描警报的更多信息,请参阅“使用任务列表在问题中跟踪代码扫描警报”。