大家好,我是你们的 前端章鱼猫,一个不喜欢喵、又不喜欢吃鱼的超级猫 ~
今天给大家带来的是 在 GitHub 上如何精准搜索的神仙技巧。
平时如何发现好的开源项目,可以看看这篇文章:GitHub 上能挖矿的神仙技巧 - 如何发现优秀开源项目 。
以下为【前端GitHub】的第 4 期内容。
普通的搜索
相信一般人搜索项目时,都是直接搜索技术栈相关的项目。
高级一点的搜索,会根据 最匹配、最多 Star 来进行排序、选择相应的语言、选择仓库或者代码来进行筛选。
但是 GitHub 的搜索功能只支持以上这些而已吗 ?
No!
如果你只会用以上的功能,那你知道的仅仅是 GitHub 搜索的冰山一角!
GitHub 的搜索是非常强大的!下面介绍更高级的搜索技巧。
搜索语法
搜索 GitHub 时,你可以构建匹配特定数字和单词的查询。
查询大于或小于另一个值的值
您可以使用 >
、>=
、<
和 <=
搜索大于、大于等于、小于以及小于等于另一个值的值。
您还可以使用 范围查询 搜索大于等于或小于等于另一个值的值。
查询范围之间的值
您可以使用范围语法 *n*..*n*
搜索范围内的值,其中第一个数字 n 是最低值,而第二个是最高值。
查询日期
您可以通过使用 >
、>=
、<
、<=
和 范围查询 搜索早于或晚于另一个日期,或者位于日期范围内的日期。
日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD
(年-月-日)。
您也可以在日期后添加可选的时间信息 THH:MM:SS+00:00
,以便按小时、分钟和秒进行搜索。 这是 T
,随后是 HH:MM:SS
(时-分-秒)和 UTC 偏移 (+00:00
)。
排除特定结果
您可以使用 NOT
语法排除包含特定字词的结果。 NOT
运算符只能用于字符串关键词, 不适用于数字或日期。
缩小搜索结果范围的另一种途径是排除特定的子集。 您可以为任何搜索限定符添加 -
前缀,以排除该限定符匹配的所有结果。
对带有空格的查询使用引号
如果搜索含有空格的查询,您需要用引号将其括起来。 例如:
- cats NOT "hello world" 匹配含有 "vue" 字样但不含有 "hello world" 字样的仓库。
- build label:"bug fix" 匹配具有标签 "bug fix"、含有 "build" 字样的议题。
某些非字母数字符号(例如空格)会从引号内的代码搜索查询中删除,因此结果可能出乎意料。
使用用户名的查询
如果搜索查询包含需要用户名的限定符,例如 user
、actor
或 assignee
,您可以使用任何 GitHub 用户名指定特定人员,或使用 @me
指定当前用户。
@me
只能与限定符一起使用,而不能用作搜索词,例如 @me main.workflow
。
高级的搜索
按仓库名称、说明或自述文件内容搜索
通过 in
限定符,您可以将搜索限制为仓库名称、仓库说明、自述文件内容或这些的任意组合。
如果省略此限定符,则只搜索仓库名称和说明。
在用户或组织的仓库内搜索
要在 特定用户或组织
拥有的所有仓库中搜索,您可以使用 user
或 org
限定符。
按仓库大小搜索
size
限定符使用 大于、小于和范围限定符 查找匹配特定大小(以千字节为单位)的仓库。
按关注者数量搜索
您可以使用 followers
限定符以及大于、小于和范围限定符基于仓库拥有的关注者数量过滤仓库。
按复刻数量搜索
forks
限定符使用大于、小于和范围限定符指定仓库应具有的复刻数量。
按星号数量搜索
您可以使用 大于、小于和范围限定符 基于仓库具有的 星标 数量搜索仓库
按仓库创建或上次更新时间搜索
你可以基于创建时间或上次更新时间过滤仓库。
- 对于仓库创建,您可以使用
created
限定符; - 要了解仓库上次更新的时间,您要使用
pushed
限定符。pushed
限定符将返回仓库列表,按仓库中任意分支上最近进行的提交排序。
两者均采用日期作为参数。 日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD
(年-月-日)。
也可以在日期后添加可选的时间信息 THH:MM:SS+00:00
,以便按小时、分钟和秒进行搜索。 这是 T
,随后是 HH:MM:SS
(时-分-秒)和 UTC 偏移 (+00:00
)。
日期支持 大于、小于和范围限定符
。
按语言搜索
您可以基于其编写采用的主要语言搜索仓库。
按主题搜索
您可以查找归类为特定 主题 的所有仓库。
估计又有很多人不知道 GitHub 上有话题一说的吧。
按主题数量搜索
您可以使用 topics
限定符以及 大于、小于和范围限定符 按应用于仓库的 主题 数量搜索仓库。
使用可视界面搜索
还可以使用 search page 或 advanced search page 搜索 GitHub 哦。
这种搜索方式,估计就更少人知道了吧。
advanced search page 提供用于构建搜索查询的可视界面。
您可以按各种因素过滤搜索,例如仓库具有的星标数或复刻数。 在填写高级搜索字段时,您的查询将在顶部搜索栏中自动构建。
按许可搜索
您可以按其许可搜索仓库。 您必须使用许可关键词按特定许可或许可系列过滤仓库。
按公共或私有仓库搜索
您可以基于仓库是公共还是私有来过滤搜索。
按公共或私有仓库搜索
您可以根据仓库是否为镜像以及托管于其他位置托管来搜索它们。
基于仓库是否已存档搜索
你可以基于仓库是否已存档来搜索仓库。
基于具有 good first issue
或 help wanted
标签的议题数量搜索
您可以使用限定符 help-wanted-issues:>n
和 good-first-issues:>n
搜索具有最少数量标签为 help-wanted
或 good-first-issue
议题的仓库。
学习
其实,以上很多内容的都是来自于 GitHub 的官方文档,如果你还想学习更多技巧,请看
如果你还不了解或者不会使用 GitHub ,可以看看这一章节:
最后
平时如何发现好的开源项目,可以看看这篇文章:GitHub 上能挖矿的神仙技巧 - 如何发现优秀开源项目。
觉得有用 ?喜欢就收藏,顺便点个赞吧,你的支持是我最大的鼓励!
往期精文