侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

GitHub正确的搜索技巧姿势你掌握了吗?

技术  /  管理员 发布于 4年前   2183

你上github搜索东西除了根据项目标题,最匹配、最多 Star 来进行排序、选择相应的语言、选择仓库或者代码来进行筛选外,你还会其他搜索方式吗?


下面我们来了解一下git的搜索语法

搜索 GitHub 时,你可以构建匹配特定数字和单词的查询。


1.查询大于或小于另一个值的值

您可以使用 >、>=、< 和 <= 搜索大于、大于等于、小于以及小于等于另一个值的值。

查询        示例

>n        cats vue:>1000 匹配含有 "vue" 字样、星标超过 1000 个的仓库。

>=n        vue topics:>=5 匹配含有 "vue" 字样、有 5 个或更多主题的仓库。

<n        vue size:<10000 匹配小于 10 KB 的文件中含有 "vue" 字样的代 |码。

<=n        vue stars:<=50 匹配含有 "vue" 字样、星标不超过 50 个的仓库。



2.您还可以使用 范围查询 搜索大于等于或小于等于另一个值的值。

查询        示例

n..*        vue stars:10..* 等同于 stars:>=10 并匹配含有 "vue" 字样、有 10 个或更多星号的仓库。

..n*        vue stars:*..10 等同于 stars:<=10 并匹配含有 "vue" 字样、有不超过 10 个星号的仓库

3.查询范围之间的值

您可以使用范围语法 *n*..*n* 搜索范围内的值,其中第一个数字 n 是最低值,而第二个是最高值。

查询        示例

n..n        vue stars:10..50 匹配含有 "vue" 字样、有 10 到 50 个星号的仓库。



4.查询日期

您可以通过使用 >、>=、<、<= 和 范围查询 搜索早于或晚于另一个日期,或者位于日期范围内的日期。

日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD(年-月-日)。


| 查询 | 示例 | | ------------ | ------------ |

| >YYYY-MM-DD | vue created:>2016-04-29 匹配含有 "vue" 字样、在 2016 年 4 月 29 日之后创建的议题。 |

| >=YYYY-MM-DD | vue created:>=2017-04-01 匹配含有 "vue" 字样、在 2017 年 4 月 1 日或之后创建的议题。 |

| <YYYY-MM-DD | vue pushed:<2012-07-05 匹配在 2012 年 7 月 5 日之前推送的仓库中含有 "vue" 字样的代码。 |

| <=YYYY-MM-DD | vue created:<=2012-07-04 匹配含有 "vue" 字样、在 2012 年 7 月 4 日或之前创建的议题。 |

| YYYY-MM-DD..YYYY-MM-DD | vue pushed:2016-04-30..2016-07-04 匹配含有 "vue" 字样、在 2016 年 4 月末到 7 月之间推送的仓库。 |

| YYYY-MM-DD..* | vue created:2012-04-30..* 匹配在 2012 年 4 月 30 日之后创建、含有 "vue" 字样的议题。 |

| ..YYYY-MM-DD* | vue created:*..2012-04-30 匹配在 2012 年 7 月 4 日之前创建、含有 "vue" 字样的议题。 |

您也可以在日期后添加可选的时间信息 THH:MM:SS+00:00,以便按小时、分钟和秒进行搜索。 


这是 T,随后是 HH:MM:SS(时-分-秒)和 UTC 偏移 (+00:00)。


查询                            示例

YYYY-MM-DDTHH:MM:SS+00:00        vue created:2017-01-01T01:00:00+07:00..2017-03-01T15:30:15+07:00 匹配在 2017 年 1 月 1 日凌晨 1 点(UTC 偏移为 07:00)与 2017 年 3 月 1 日下午 3 点(UTC 偏移为 07:00)之间创建的议题。 UTC 偏移量 07:00,2017 年 3 月 1 日下午 3 点。 UTC 偏移量 07:00。

YYYY-MM-DDTHH:MM:SSZ            vue created:2016-03-21T14:11:00Z..2016-04-07T20:45:00Z 匹配在 2016 年 3 月 21 日下午 2:11 与 2016 年 4 月 7 日晚上 8:45 之间创建的议题。





5.排除特定结果

您可以使用 NOT 语法排除包含特定字词的结果。 NOT 运算符只能用于字符串关键词, 不适用于数字或日期。

查询            示例

NOT            hello NOT world 匹配含有 "hello" 字样但不含有 "world" 字样的仓库。


缩小搜索结果范围的另一种途径是排除特定的子集。 您可以为任何搜索限定符添加 - 前缀,以排除该限定符匹配的所有结果。

查询                示例

-QUALIFIER          vue stars:>10 -language:javascript 匹配含有 "vue" 字样、有超过 10 个星号但并非以 JavaScript 编写的仓库。

                    mentions:biaochenxuying -org:github 匹配提及 @biaochenxuying 且不在 GitHub 组织仓库中的议题


6.对带有空格的查询使用引号

如果搜索含有空格的查询,您需要用引号将其括起来。 例如:

cats NOT "hello world" 匹配含有 "vue" 字样但不含有 "hello world" 字样的仓库。

build label:"bug fix" 匹配具有标签 "bug fix"、含有 "build" 字样的议题。

某些非字母数字符号(例如空格)会从引号内的代码搜索查询中删除,因此结果可能出乎意料。



7.使用用户名的查询

如果搜索查询包含需要用户名的限定符,例如 user、actor 或 assignee,您可以使用任何 GitHub 用户名指定特定人员,或使用 @me 指定当前用户。

查询                    示例

QUALIFIER:USERNAME        author:biaochenxuying 匹配 @biaochenxuying 创作的提交。

QUALIFIER:@me                is:issue assignee:@me 匹配已分配给结果查看者的议题

@me 只能与限定符一起使用,而不能用作搜索词,例如 @me main.workflow。




更高级的搜索

1.按仓库名称、说明或自述文件内容搜索

通过 in 限定符,您可以将搜索限制为仓库名称、仓库说明、自述文件内容或这些的任意组合。

如果省略此限定符,则只搜索仓库名称和说明。

限定符                示例

in:namevue         in:name 匹配其名称中含有 "jquery" 的仓库。

in:description        vue in:name,description 匹配其名称或说明中含有 "vue" 的仓库。

in:readmevue         in:readme 匹配其自述文件中提及 "vue" 的仓库。

repo:owner/name        repo:biaochenxuying/blog 匹配特定仓库名称,比如:用户为| biaochenxuying 的 blog 项目。



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

要在 特定用户或组织 拥有的所有仓库中搜索,您可以使用 user 或 org 限定符。

限定符                示例

user:USERNAME            user:biaochenxuying forks:>=100 匹配来自 @biaochenxuying、拥有超过 100 复刻的仓库。

org:ORGNAME            org:github 匹配来自 GitHub 的仓库。



3.按仓库大小搜索

size 限定符使用 大于、小于和范围限定符 查找匹配特定大小(以千字节为单位)的仓库。

限定符                示例

size:n              size:1000 匹配恰好为 1 MB 的仓库。

                    size:>=30000 匹配至少为 30 MB 的仓库。

                    size:<50 匹配小于 50 KB 的仓库。

                    size:50..120 匹配介于 50 KB 与 120 KB 之间的仓库。



4.按关注者数量搜索

您可以使用 followers 限定符以及大于、小于和范围限定符基于仓库拥有的关注者数量过滤仓库。

限定符            示例

followers:n        node followers:>=10000 匹配有 10,000 或更多关注者提及文字 "node" 的仓库。

                    styleguide linter followers:1..10 匹配拥有 1 到 10 个关注者并且提及 "styleguide linter" 一词的的仓库。





5.按星号数量搜索

您可以使用 大于、小于和范围限定符 基于仓库具有的 星标 数量搜索仓库

限定符            示例

stars:n        stars:500 匹配恰好具有 500 个星号的仓库。

                stars:10..20 匹配具有 10 到 20 个星号、小于 1000 KB 的仓库。

                stars:>=500 fork:true language:vue 匹配具有至少 500 个星号,包括复刻的星号(以 vue 编写)的仓库。

2.png




6.按仓库创建或上次更新时间搜索

你可以基于创建时间或上次更新时间过滤仓库。

对于仓库创建,您可以使用 created 限定符;

要了解仓库上次更新的时间,您要使用 pushed 限定符。 pushed 限定符将返回仓库列表,按仓库中任意分支上最近进行的提交排序。

两者均采用日期作为参数。 日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD(年-月-日)。

也可以在日期后添加可选的时间信息 THH:MM:SS+00:00,以便按小时、分钟和秒进行搜索。 这是 T,随后是 HH:MM:SS(时-分-秒)和 UTC 偏移 (+00:00)。


日期支持 大于、小于和范围限定符。

限定符                            示例

created:YYYY-MM-DDvue             created:<2020-01-01 匹配具有 "vue" 字样、在 2020 年之前创建的仓库。

pushed:YYYY-MM-DDcss              pushed:>2020-02-01 匹配具有 "css" 字样、在 2020 年 1 月之后收到                                         推送的仓库。

                  vue pushed:>=2020-03-06 fork:only 匹配具有 "vue" 字样、在 2020 年 3                                         月 6 日或之后收到推送并且作为复刻的仓库。

3.png


7.按语言搜索

您可以基于其编写采用的主要语言搜索仓库。

限定符                    示例

language:LANGUAGE        vue language:javascript 匹配具有 "vue" 字样、以 JavaScript 编写的仓库。

4.png


8.按主题搜索

您可以查找归类为特定 主题 的所有仓库。


限定符                示例

topic:TOPIC            topic:algorithm 匹配已归类为 "algorithm" 主题的仓库。

估计又有很多人不知道 GitHub 上有话题一说的吧。

5.png


9.按主题数量搜索

您可以使用 topics 限定符以及 大于、小于和范围限定符 按应用于仓库的 主题 数量搜索仓库。

限定符                示例

topics:ntopics:5     匹配具有五个主题的仓库。

                     topics:>3 匹配超过三个主题的仓库。

6.png


10.使用可视界面搜索

还可以使用 search page 或 advanced search page 搜索 GitHub 哦。

这种搜索方式,估计就更少人知道了吧。

advanced search page 提供用于构建搜索查询的可视界面。

您可以按各种因素过滤搜索,例如仓库具有的星标数或复刻数。 在填写高级搜索字段时,您的查询将在顶部搜索栏中自动构建。


11.按许可搜索

您可以按其许可搜索仓库。 您必须使用许可关键词按特定许可或许可系列过滤仓库。


限定符                            示例

license:LICENSE_KEYWORD        license:apache-2.0 匹配根据 Apache License 2.0 授权的仓库。


12.按公共或私有仓库搜索

您可以基于仓库是公共还是私有来过滤搜索。

限定符                    示例

is:publicis:public       org:github 匹配 GitHub 拥有的公共仓库。

is:privateis:private     pages 匹配您有访问权限且包含 "pages" 字样的私有仓库。


13.按仓库是否为镜像以及托管于其他位置托管来搜索

限定符          示例

mirror:true     mirror:true GNOME 匹配是镜像且包含 "GNOME" 字样的仓库。

mirror:false    mirror:false GNOME 匹配并非镜像且包含 "GNOME" 字样的仓库。



14.基于仓库是否已存档搜索

你可以基于仓库是否已存档来搜索仓库。


限定符            示例

archived:true     archived:true GNOME 匹配已存档且包含 "GNOME" 字样的仓库。

archived:false    archived:false GNOME 匹配未存档且包含 "GNOME" 字样的仓库。


15.基于具有 good first issue 或 help wanted 标签的议题数量搜索


您可以使用限定符 help-wanted-issues:>n 和 good-first-issues:>n 搜索具有最少数量标签为 help-wanted 或 good-first-issue 议题的仓库。


限定符                    示例

good-first-issues:>n     good-first-issues:>2 javascript 匹配具有超过两个标签为good-first-issue 的议题且包含 "javascript" 字样的仓库。

help-wanted-issues:>n    help-wanted-issues:>4 react 匹配具有超过四个标签为 help-wanted 的议题且包含 "React" 字样的仓库。




  • 上一条:
    常用JavaScript正则表达式合集
    下一条:
    推荐一波站长辅助测试工具,帮助站长测试拨测及诊断分析网站
  • 昵称:

    邮箱:

    1条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 2024.07.09日OpenAI将终止对中国等国家和地区API服务(0个评论)
    • 2024/6/9最新免费公益节点SSR/V2ray/Shadowrocket/Clash节点分享|科学上网|免费梯子(0个评论)
    • 国外服务器实现api.openai.com反代nginx配置(0个评论)
    • 2024/4/28最新免费公益节点SSR/V2ray/Shadowrocket/Clash节点分享|科学上网|免费梯子(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-07
    • 2017-08
    • 2017-09
    • 2018-01
    • 2018-07
    • 2018-08
    • 2018-09
    • 2018-12
    • 2019-01
    • 2019-02
    • 2019-03
    • 2019-04
    • 2019-05
    • 2019-06
    • 2019-07
    • 2019-08
    • 2019-09
    • 2019-10
    • 2019-11
    • 2019-12
    • 2020-01
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-08
    • 2020-09
    • 2020-10
    • 2020-11
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-03
    • 2022-04
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-12
    • 2024-02
    • 2024-04
    • 2024-05
    • 2024-06
    • 2025-02
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客