Skip to main content

搜索代码 (旧)

如果你使用的是代码搜索 API,则只需使用旧的代码搜索语法。

Note

本文介绍了旧的代码搜索语法,你只需将其用于搜索代码的 REST API 终结点

有关可在 GitHub 上使用的代码搜索语法的信息,请参阅 了解 GitHub 代码搜索语法

可以跨所有 GitHub 执行全局搜索,或将搜索范围限于特定存储库或组织。有关详细信息,请参阅 关于在 GitHub 上搜索

您只能使用这些代码搜索限定符搜索代码。 搜索代码时,专用于仓库、用户或提交的搜索限定符将不起作用。

Tip

  • 本文包含 GitHub.com 网站上示例搜索的链接,但你可以在任何 平台中使用相同的搜索筛选器。 在链接的示例搜索中,将 github.com 替换为 GitHub 平台的主机名。
  • 有关可以添加到任何搜索限定符以进一步改善结果的搜索语法列表,请参阅 了解搜索语法
  • 对多个字词的搜索词使用引号。 例如,如果要搜索具有标签“In progress”的问题,可搜索 label:"in progress"。 搜索不区分大小写。

由于搜索代码的复杂性,执行搜索的方式有一些限制:

  • 必须登录到 GitHub 上的个人帐户才能跨所有公共存储库搜索代码。
  • 仅当分叉的星多于父级存储库,且分支存储库在创建后至少有一个推送提交时,分叉中的代码才可搜索。 如果分叉的星少于父级存储库,或者无提交,则分叉没有针对代码搜索编制索引。 若要在搜索结果中包含星数多于其父级的分叉,或者有至少一个推送提交,必须将 fork:truefork:only 添加到查询中。 有关详细信息,请参阅“在复刻中搜索”。
  • 仅默认分支针对代码搜索编制了索引。
  • 只有小于 384 KB 的文件可搜索。
  • 可搜索多达 4000 个专用 和内部 存储库。 这 4000 个存储库将是你有权访问的前 10000 个专用 和内部 存储库中最近更新的存储库。
  • 只有文件少于 500,000 个的存储库可搜索。
  • 只能搜索去年有活动或已在搜索结果中返回的仓库。
  • filename 搜索外,在搜索源代码时,必须始终至少包含一个搜索词。 例如,搜索 language:javascript 是无效的,而搜索