我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

搜索议题和拉取请求

您可以在 GitHub Enterprise 上搜索代码,并使用这些代码搜索限定符的任意组合缩小结果范围。

您可以在所有 GitHub Enterprise 内全局搜索议题和拉取请求,也可以在特定组织内搜索议题和拉取请求。 更多信息请参阅“关于在 GitHub 上搜索”。

提示:

  • 本文章包含在 GitHub.com 网站上的示例搜索,但您可以在 您的 GitHub Enterprise Server 实例 上使用相同的搜索过滤器。

  • 有关可以添加到任何搜索限定符以进一步改善结果的搜索语法列表,请参阅“了解搜索语法”。

  • 对多个字词的搜索词使用引号。 例如,如果要搜索具有标签 "In progress" 的议题,可搜索 label:"in progress"。 搜索不区分大小写。

  • You can focus your cursor on the search bar above the issue or pull request list with a keyboard shortcut. 更多信息请参阅“键盘快捷键”。

本文内容:

仅搜索议题或拉取请求

默认情况下,GitHub Enterprise 搜索将返回议题和拉取请求。 但您可以使用 typeis 限定符将搜索结果限制为仅议题或拉取请求。

限定符 示例
type:pr cat type:pr 匹配含有 "cat" 字样的拉取请求。
type:issue github commenter:defunkt type:issue 匹配含有 "github" 字样且由 @defunkt 评论的议题。
is:pr event is:pr 匹配含有 "event" 字样的拉取请求。
is:issue is:issue label:bug is:closed 匹配具有标签 "bug" 的已关闭议题。

按标题、正文或评论搜索

通过 in 限定符,您可以将搜索限制为标题、正文、评论或这些的任意组合。 如果省略此限定符,则标题、正文和评论全部搜索。

限定符 示例
in:title warning in:title 匹配其标题中含有 "warning" 的议题。
in:body error in:title,body 匹配其标题或正文中含有 "error" 的议题。
in:comments shipit in:comments 匹配其评论中提及 "shipit" 的议题。

在用户或组织的仓库内搜索

要在特定用户或组织拥有的所有仓库中搜索议题和拉取请求,您可以使用 userorg 限定符。 要在特定仓库中搜索议题和拉取请求,您可以使用 repo 限定符。

限定符 示例
user:USERNAME user:defunkt ubuntu 匹配含有 "ubuntu" 字样、来自 @defunkt 拥有的仓库的议题。
org:ORGNAME org:github 匹配 GitHub 组织拥有的仓库中的议题。
repo:USERNAME/REPOSITORY repo:mozilla/shumway created:<2012-03-01 匹配来自 @mozilla 的 shumway 项目、在 2012 年 3 月之前创建的议题。

按开放或关闭状态搜索

您可以使用 stateis 限定符基于议题和拉取请求处于打开还是关闭状态进行过滤。

限定符 示例
state:open libraries state:open mentions:vmg 匹配提及 @vmg 且含有 "libraries" 字样的开放议题。
state:closed design state:closed in:body 匹配正文中含有 "design" 字样的已关闭议题。
is:open performance is:open is:issue 匹配含有 "performance" 字样的开放议题。
is:closed android is:closed 匹配含有 "android" 字样的已关闭议题和拉取请求。

按公共或私有仓库搜索

如果您在所有 GitHub Enterprise 内搜索,基于仓库是公共还是私有来过滤结果可能非常有用。 您可以使用 is:publicis:private 实现此操作。

限定符 示例
is:public is:public 匹配所有公共仓库中的议题和拉取请求。
is:private is:private cupcake 匹配您具有访问权限的私有仓库中含有 "cupcake" 字样的议题和拉取请求。

按作者搜索

author 限定符查找由特定用户或集成帐户创建的议题和拉取请求。

限定符 示例
author:USERNAME cool author:gjtorikian 匹配含有 "cool" 字样、由 @gjtorikian 创建的议题和拉取请求。
bootstrap in:body author:mdo 匹配由 @mdo 撰写、正文中含有 "bootstrap" 字样的议题。
author:app/USERNAME author:app/robot 匹配由名为 "robot" 的集成帐户创建的议题。

按受理人搜索

assignee 限定符查找分配给特定用户的议题和拉取请求。 您无法搜索具有 any 受理人的议题和拉取请求,但可以搜索没有受理人的议题和拉取请求

限定符 示例
assignee:USERNAME assignee:vmg repo:libgit2/libgit2 匹配分配给 @vmg 的 libgit2 项目 libgit2 中的议题和拉取请求。

按提及搜索

mentions 限定符查找提及特定用户的议题。 更多信息请参阅“提及人员和团队”。

限定符 示例
mentions:USERNAME resque mentions:defunkt 匹配含有 "resque" 字样、提及 @defunkt 的议题。

按团队提及搜索

对于您所属的组织和团队,您可以使用 team 限定符查找提及该组织内特定团队的议题或拉取请求。 将这些示例名称替换为您的组织和团队的名称以执行搜索。

限定符 示例
team:ORGNAME/TEAMNAME team:jekyll/owners 匹配提及 @jekyll/owners 团队的议题。
team:myorg/ops is:open is:pr 匹配提及 @myorg/ops 团队的打开拉取请求。

按评论者搜索

commenter 限定符查找含有来自特定用户评论的议题。

限定符 示例
commenter:USERNAME github commenter:defunkt org:github 匹配位于 GitHub 拥有的仓库中、含有 "github" 字样且由 @defunkt 评论的议题。

按议题或拉取请求中涉及的用户搜索

您可以使用 involves 限定符查找以某种方式涉及特定用户的议题。 involves 限定符是单一用户 authorassigneementionscommenter 限定符之间的逻辑 OR(或)。 换句话说,此限定符查找由特定用户创建、分配给该用户、提及该用户或由该用户评论的议题和拉取请求。

限定符 示例
involves:USERNAME involves:defunkt involves:jlord 匹配涉及 @defunkt 或 @jlord 的议题。
NOT bootstrap in:body involves:mdo 匹配涉及 @mdo 且正文中未包含 "bootstrap" 字样的议题。

按标签搜索

您可以使用 label 限定符按标签缩小结果范围。 由于议题可有多个标签,因此您可为每个议题列出单独的限定符。

限定符 示例
label:LABEL label:"help wanted" language:ruby 匹配标签为 "help wanted"、位于 Ruby 仓库中的议题。
broken in:body -label:bug label:priority matches issues with the word "broken" in the body, that lack the label "bug", but do have the label "priority."
label:bug label:resolved 匹配含有 "bug" 和 "resolved" 标签的议题。

按里程碑搜索

milestone 限定符查找作为仓库内里程碑组成部分的议题或拉取请求。

限定符 示例
milestone:MILESTONE milestone:"overhaul" 匹配位于名为 "overhaul" 的里程碑中的议题。
milestone:"bug fix" 匹配位于名为 "bug fix" 的里程碑中的议题。

按项目板搜索

您可以使用 project 限定符查找与仓库或组织中特定项目板关联的议题。 必须按项目板编号搜索项目板。 您可在项目板 URL 的末尾找到项目板编号。

限定符 示例
project:PROJECT_BOARD project:github/57 匹配 GitHub 拥有的、与组织项目板 57 关联的议题。
project:REPOSITORY/PROJECT_BOARD project:github/linguist/1 匹配与 @github 的 linguist 仓库中的项目板 1 关联的议题。

按提交状态搜索

您可以基于提交的状态过滤拉取请求。 这在使用 Status API 或 CI 服务时特别有用。

限定符 示例
status:pending language:go status:pending 匹配在状态为待定的 Go 仓库中打开的拉取请求。
status:success is:open status:success finally in:body 匹配正文中含有 "finally" 字样、具有成功状态的打开拉取请求。
status:failure created:2015-05-01..2015-05-30 status:failure 匹配在 2015 年 5 月打开、具有失败状态的拉取请求。

按提交 SHA 搜索

如果您知道提交的特定 SHA 哈希,您可以使用它来搜索包含该 SHA 的拉取请求。 SHA 语法必须至少 7 个字符。

限定符 示例
SHA e1109ab 匹配具有开头为 e1109ab 的提交 SHA 的拉取请求。
0eff326d6213c is:merged 匹配具有开头为 0eff326d6213c 的提交 SHA 的合并拉取请求。

按分支名称搜索

您可以基于拉取请求来自的分支("head" 分支)或其合并到的分支("base" 分支)来过滤拉取请求。

限定符 示例
head:HEAD_BRANCH head:change is:closed is:unmerged 匹配从名称以 "change" 字样开头的已关闭分支打开的拉取请求。
base:BASE_BRANCH base:gh-pages 匹配合并到 gh-pages 分支中的拉取请求。

按语言搜索

通过 language 限定符,您可以搜索以特定语言编写的仓库内的议题和拉取请求。

限定符 示例
language:LANGUAGE language:ruby state:open 匹配 Ruby 仓库中的开放议题。

按评论数量搜索

您可以使用 comments 限定符以及大于、小于和范围限定符以按评论数量搜索。

限定符 示例
comments:n state:closed comments:>100 匹配具有超过 100 条评论的已关闭议题。
comments:500..1000 匹配具有 500 到 1,000 条评论的议题。

按交互数量搜索

您可以使用 interactions 限定符以及大于、小于和范围限定符按交互数量过滤议题和拉取请求。 交互数量是对议题或拉取请求的反应和评论数量。

限定符 示例
interactions:n interactions:>2000 匹配超过 2000 个交互的拉取请求或议题。
interactions:500..1000 匹配 500 至 1,000 个交互的拉取请求或议题。

按反应数量搜索

您可以使用 reactions 限定符以及 大于、小于和范围限定符按反应数量过滤议题和拉取请求。

限定符 示例
reactions:n reactions:>1000 匹配超过 1000 个反应的议题。
reactions:500..1000 匹配 500 至 1000 个反应的议题。

搜索草稿拉取请求

您可以过滤草稿拉取请求。 更多信息请参阅关于拉取请求

限定符 示例
is:draft is:draft 匹配草稿拉取请求。

按拉取请求审查状态和审查者搜索

You can filter pull requests based on their review status (none, required, approved, or changes requested), by reviewer, and by requested reviewer.

限定符 示例
review:none type:pr review:none 匹配尚未审查的拉取请求。
review:required type:pr review:required 匹配需要审查然后才能合并的拉取请求。
review:approved type:pr review:approved 匹配审查者已批准的拉取请求。
review:changes_requested type:pr review:changes_requested 匹配审查者已请求更改的拉取请求。
reviewed-by:USERNAME type:pr reviewed-by:gjtorikian 匹配特定人员审查的拉取请求。
review-requested:USERNAME type:pr review-requested:benbalter 匹配特定人员申请审查的拉取请求。 申请的审查者在其审查拉取请求后不再在搜索结果中列出。 如果申请的人员在申请审查的团队中,则该团队的审查请求也将在搜索结果中显示。
team-review-requested:TEAMNAME type:pr team-review-requested:atom/design 匹配已审查团队 atom/design 请求的拉取请求。 申请的审查者在其审查拉取请求后不再在搜索结果中列出。

按议题或拉取请求创建或上次更新的时间搜索

您可以基于创建时间或上次更新时间过滤议题。 对于议题创建,您可以使用 created 限定符;要了解议题上次更新的时间,您要使用 updated 限定符。

两者均采用日期作为参数。 Date formatting must follow the ISO8601 standard, which is YYYY-MM-DD (year-month-day). You can also add optional time information THH:MM:SS+00:00 after the date, to search by the hour, minute, and second. That's T, followed by HH:MM:SS (hour-minutes-seconds), and a UTC offset (+00:00).

Dates support greater than, less than, and range qualifiers.

限定符 示例
created:YYYY-MM-DD language:c# created:<2011-01-01 state:open 匹配以 C# 编写的仓库中 2011 年以前创建的开放议题。
updated:YYYY-MM-DD weird in:body updated:>=2013-02-01 匹配 2013 年 2 月后更新的、正文中含有 "weird" 字样的议题。

按议题或拉取请求关闭的时间搜索

您可以使用 closed 限定符基于议题和拉取请求关闭的时间进行过滤。

此限定符采用日期作为其参数。 Date formatting must follow the ISO8601 standard, which is YYYY-MM-DD (year-month-day). You can also add optional time information THH:MM:SS+00:00 after the date, to search by the hour, minute, and second. That's T, followed by HH:MM:SS (hour-minutes-seconds), and a UTC offset (+00:00).

Dates support greater than, less than, and range qualifiers.

限定符 示例
closed:YYYY-MM-DD language:swift closed:>2014-06-11 匹配 2014 年 6 月 11 日后关闭的 Swift 中的议题和拉取请求。
data in:body closed:<2012-10-01 匹配 2012 年 10 月后关闭、正文中含有 "data" 字样的议题和拉取请求。

按拉取请求合并的时间搜索

您可以使用 merged 限定符基于拉取请求合并的时间进行过滤。

此限定符采用日期作为其参数。 Date formatting must follow the ISO8601 standard, which is YYYY-MM-DD (year-month-day). You can also add optional time information THH:MM:SS+00:00 after the date, to search by the hour, minute, and second. That's T, followed by HH:MM:SS (hour-minutes-seconds), and a UTC offset (+00:00).

Dates support greater than, less than, and range qualifiers.

限定符 示例
merged:YYYY-MM-DD language:javascript merged:<2011-01-01 匹配 2011 年以前合并的 JavaScript 仓库中的拉取请求。
fast in:title language:ruby merged:>=2014-05-01 匹配 2014 年 5 月之后合并、标题中含有 "fast" 字样、以 Ruby 编写的拉取请求。

基于拉取请求是否已合并搜索

您可以使用 is 限定符基于拉取请求已合并还是未合并进行过滤。

限定符 示例
is:merged bugfix is:pr is:merged 匹配含有 "bugfix" 字样的已合并拉取请求。
is:unmerged error is:unmerged 匹配含有 "error" 字样的已关闭议题和拉取请求。

基于仓库是否已存档搜索

archived 限定符基于议题或拉取请求是否位于已存档仓库中过滤结果。

限定符 示例
archived:true archived:true GNOME 匹配您具有访问权限的已存档仓库中含有 "GNOME" 字样的议题和拉取请求。
archived:false archived:false GNOME 匹配您具有访问权限的未存档仓库中含有 "GNOME" 字样的议题和拉取请求。

基于对话是否已锁定搜索

您可以使用 is 限定符搜索具有已锁定对话的议题或拉取请求。 更多信息请参阅“锁定对话”。

限定符 示例
is:locked code of conduct is:locked is:issue archived:false 匹配未存档仓库中具有已锁定对话且含有 "code of conduct" 字样的议题或拉取请求。
is:unlocked code of conduct is:unlocked is:issue archived:false 匹配未存档仓库中具有未锁定对话且含有 "code of conduct" 字样的议题或拉取请求。

按缺少的元数据搜索

您可以使用 no 限定符缩小搜索缺少特定元数据的议题和拉取请求的范围。 该元数据包括:

  • 标签
  • 里程碑
  • 受理人
  • 项目
限定符 示例
no:label priority no:label 匹配没有任何标签且含有 "priority" 字样的议题和拉取请求。
no:milestone sprint no:milestone type:issue 匹配未与含有 "sprint" 字样的里程碑关联的议题。
no:assignee important no:assignee language:java type:issue 匹配未与受理人关联、含有 "important" 字样且位于 Java 仓库中的议题。
no:project build no:project 匹配未与项目板关联、含有 "build" 字样的议题。

延伸阅读

问问别人

找不到要找的内容?

联系我们