2021 年 12 月更新:搜索有 been improved again,可搜索精确字符串,支持子字符串匹配和特殊字符或正则表达式。
但仅限于cs.github.com,并且仍处于测试阶段(适用候补名单)
2013 年 1 月更新:brand new search has arrived!,基于 elasticsearch.org:
在 ruby 存储库中搜索 stat 将表示为 stat repo:ruby/ruby,现在可以正常工作TM。
(repo 名称不区分大小写:test repo:wordpress/wordpress 返回与test repo:Wordpress/Wordpress 相同)
将给予:
您还有许多其他搜索示例,基于on followers,或on forks,或...
2012 年 7 月更新(过去的 Lucene 搜索和糟糕的代码索引,加上损坏的 GUI,留在这里存档):
搜索(基于SolrQuerySyntax)现在更加宽松,使用默认搜索选择器“Everything”时,可怕的“Invalid search query. Try quoting it.”消失了:)
(我想我们都可以比 Tim Pease,他的目标之一是 "hacking on improved search experiences for all GitHub properties" 和当时的I did mention this Stack Overflow question ;)
这是 ruby 代码中 grep 的示例:它将查找存储库和用户,但也查找我首先要搜索的内容:代码!
上一期的初步答案和插图(2012 年 9 月 => 2012 年 3 月)
您可以使用advanced search GitHub form:
- 从下拉列表中选择
Code、Repositories 或Users,然后
- 使用为该搜索类型列出的相应前缀。
例如,使用 repo:username/repo-name 指令将搜索限制为 code 存储库。
初始的“Advanced Search”页面包含以下部分:
代码搜索:
代码搜索将查看 GitHub 上公开托管的所有代码。您也可以按以下方式过滤:
- 语言
language:
- 存储库名称(包括用户名)
repo:
- 文件路径
path:
因此,如果您选择“Code”搜索选择器,那么您对 repo 中文本的 grepping 查询将起作用:
来自 GitHub 的 难以置信 无用是:
- 如果您忘记输入正确的搜索选择器(此处为“
Code”),您将收到一条错误消息:
"Invalid search query. Try quoting it."
-
错误消息对您没有任何帮助。
再多的“quoting it”也不会让你摆脱这个错误。
-
一旦您收到该错误消息,您就不会看到提醒您搜索选择器(“Repositories”、“Users”或“@987654367”之间的正确关联的部分@") 和(右)搜索过滤器(此处为“repo:”)。
您所做的任何进一步尝试都不会显示这些关联(选择器-过滤器)。只有您在上面看到的错误消息...
取回这些数组的唯一方法是单击“Advance Search”图标:
-
默认的“Everything”搜索选择器实际上是所有搜索过滤器的错误!除了“language:”...
(您可以想象/假设“Everything”将帮助您选择任何搜索选择器实际上适用于搜索过滤器“repo:”,但不是。这太容易了)
-
您不能仅通过“Advance Search”字段指定所需的搜索选择器!
(但您可以使用“language:”,即使“Search Language”是“Search for”“类型”之一下方的另一个组合框...)
所以,用户的体验通常是这样的:
- 您单击“
Advanced Search”,浏览过滤器的这些部分,并注意您要使用的一个:“repo:”
- 您进行了第一次高级搜索“
repo:jruby/jruby stat”,但使用默认搜索选择器“Everything”
=> FAIL! (并且显示关联“Selectors-Filters”的数组已消失)
- 您注意到“搜索”选择器,选择第一个选项“
Repositories”(“Dah!我想在存储库中搜索...”)
=> FAIL!
- 沮丧,您选择下一个选择器(此处为“
Users”),甚至没有看所述选择器,只是再试一次...
=> FAIL!
- “搞砸了,GitHub 搜索损坏了!我要离开这里了!”
...
(GitHub 高级搜索实际上并没有损坏。只是他们的 GUI 是...)
所以,回顾一下,如果你想“在 Github 项目代码中查找某些内容”,作为 OP Ben Humphreys,不要忘记选择“Code”搜索选择器...