GitHub小技巧, 让你嗖嗖找到想要的

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: GitHub小技巧, 让你嗖嗖找到想要的


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


搜: 仓库基本信息

in: 限定搜索的范围

关键字 in 是用来限定搜索的范围,可以指定是在名称、描述、readme文档中搜索关键字

  • in:name:指定搜索范围是仓库名称
  • in:description:指定搜索范围是摘要中
  • in:readme:指定搜索范围是readme文档中
  • location:china, 匹配用户填写的地址在中国
  • language:java 匹配开发语言是java的开发者
  • topic: XXX 匹配特定主题分类的所有仓库

比如,指定项目仓库名称springboot、mybatis、demo三个关键字,那么搜索如下:

in:name springboot mybatis demo
in:description 单点登录 language:java


带有用户名的查询

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

格式 例子
QUALIFIER:USERNAME author:nat 匹配由@nat 创作的提交
QUALIFIER:@me is:issue assignee:@me 匹配分配给查看结果的人的issues

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


搜: 仓库的stars, fork, push等

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

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

方式如下:

  • stars:> :筛选stars数量大于某个值的仓库
  • stars:start…end :筛选stars数量在start和end区间的仓库
  • fork:>
  • fork:start…end
  • followers:>1000 , 匹配拥有超过1000名关注者的开发者
格式 例子
>n cats stars:>1000 匹配具有超过 1000 星的单词“cats”的存储库。
>=n **cats topics:>=5**匹配具有 5 个或更多主题的带有单词“cats”的存储库。
<n cat size:<10000匹配小于 10 KB 的文件中带有单词“cats”的代码。
<=n **cats stars:<=50**匹配具有 50 个或更少星的单词“cats”的存储库。

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

格式 例子
n…* **cats stars:10…* **等效于stars:>=10并匹配具有 10 个或更多星的带有单词“cats”的存储库。
**…*n **cats stars:*…10 **效于stars:<=10并匹配带有单词“cats”且星数不超过 10 的存储库。


查询范围之间的值

你可以使用范围语法来搜索范围内的值,其中第一个数字n是最小值,第二个数字是最大值。n..n

格式 例子
n..n **cats stars:10…50**匹配具有 10 到 50 星之间的单词“cats”的存储库。


查询日期

你可以搜索日期,通过使用>>=<<=,和范围查询

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

格式 例子
>YYYY-MM-DD cat created:>2016-04-29匹配在 2016 年 4 月 29 日之后创建的带有“cats”一词的issues 。
>=YYYY-MM-DD cat created:>=2017-04-01匹配在 2017 年 4 月 1 日或之后创建的带有“cats”一词的issues 。
<YYYY-MM-DD cat push:<2012-07-05匹配 2012 年 7 月 5 日之前推送到的存储库中带有单词“cats”的代码。
<=YYYY-MM-DD cat created:<=2012-07-04匹配在 2012 年 7 月 4 日或之前创建的带有“cats”一词的issues 。
YYYY-MM-DD..YYYY-MM-DD cat push:2016-04-30…2016-07-04匹配在 2016 年 4 月底和 7 月之间推送到的带有“cats”一词的存储库。
YYYY-MM-DD..* cats created:2012-04-30…* 匹配 2012 年 4 月 30 日之后创建的包含单词“cats”的issues 。
*..YYYY-MM-DD **cats created:*…2012-07-04**匹配在 2012 年 7 月 4 日之前创建的包含单词“cats”的issues 。

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

格式 例子
YYYY-MM-DDTHH:MM:SS+00:00 cat created:2017-01-01T01:00:00+07:00…2017-03-01T15:30:15+07:00匹配 2017 年 1 月 1 日凌晨 1 点之间创建的issues ,UTC 偏移量为07:00; 2017 年3 月 1 日下午 3 点,UTC 偏移量为07:00.
YYYY-MM-DDTHH:MM:SSZ cat created:2016-03-21T14:11:00Z…2016-04-07T20:45:00Z匹配在 2016 年 3 月 21 日下午 2:11 和 2106 年 4 月 7 日晚上 8:45 之间创建的issues 。
# 例如: 
in:description 单点登录 language:java pushed:>2019-12-01


搜: 过滤一些信息

排除某些结果

你可以使用NOT语法排除包含某个单词的结果。该NOT运算符只能用于字符串关键字。它不适用于数字或日期。

格式 例子
NOT hello NOT world匹配包含单词“hello”但不包含单词“world”的存储库。

缩小搜索结果的另一种方法是排除某些子集。你可以在任何搜索限定符前加上 a-以排除与该限定符匹配的所有结果。

格式 例子
-QUALIFIER **mentions:defunkt -org:github**匹配提及@defunkt 且不在 GitHub 组织中的存储库中的issues 。


搜: 匹配词语的完整搜索

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

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

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


搜: 受喜爱的项目

Awesome + 关键字

Awesome 似乎已经成为不少 GitHub 项目喜爱的命名之一

公式:awesome关键字:awesome系列,一般用来收集学习、工具、书籍类相关的项目

搜索优秀的redis相关的项目,包括框架,教程等 awesome redis


搜: 项目内

项目内搜索

使用英文字母 t ,开启项目内搜索


高亮显示某行代码

一行:地址后面紧跟 #L12

例如: https://github.com/redis/redis/blob/unstable/redis.conf#L12

多行:地址后面紧跟 #Lx - #Ln

例如: https://github.com/redis/redis/blob/unstable/redis.conf#L12-L45


界面: 高级搜索

除了使用这种特定的限定词来筛选之外,其实github还给我们提供了一种筛选的搜索链接。

https://github.com/search/advanced

其实就是界面化的搜索条件筛选框,想不起搜索关键词或者单词的时候可以收藏这个高级搜索界面哈。


GitHub 隐藏功能

https://github.com/FLY-Open-DevOps/github-cheat-sheet

http://git.io/sheet


参考链接:

https://docs.github.com/en/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax

https://docs.github.com/en/search-github/getting-started-with-searching-on-github/sorting-search-results

https://github.com/search/advanced



相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
JavaScript 前端开发 开发工具
如何运行查看github上的项目-以今日头条(移动端)为例
如何运行查看github上的项目-以今日头条(移动端)为例
89 0
|
Rust 程序员 数据安全/隐私保护
GitHub 上标星 13.4K 的远程软件!太强大了
GitHub 上标星 13.4K 的远程软件!太强大了
3072 0
GitHub 上标星 13.4K 的远程软件!太强大了
|
2月前
|
程序员
后续来了,GitHub 这样处理这件事
我在去年八月份给 GitHub 写信,举报了一个滥用「Used by」特性的事件,GitHub 一直没有给我回信。但是实际上,他们已经悄悄地更新了。
34 0
怎样在GitHub上建立仓库、以及怎样实现分支代码的合并。保姆级别的教程
这篇文章是一份详细的GitHub使用教程,介绍了如何在GitHub上创建仓库、创建分支、编辑和发布更改内容、发起拉取请求以及合并分支的操作步骤。
怎样在GitHub上建立仓库、以及怎样实现分支代码的合并。保姆级别的教程
|
6月前
|
前端开发 微服务 Python
轻松搜寻GitHub宝藏!掌握这些技巧快速找到理想项目
轻松搜寻GitHub宝藏!掌握这些技巧快速找到理想项目
|
7月前
|
存储 JavaScript 前端开发
信息收集 -- GitHub搜索技巧(GitMiner)
信息收集 -- GitHub搜索技巧(GitMiner)
82 0
|
7月前
|
程序员 数据库
十一假期,分享几个好玩儿的GitHub项目
十一假期,分享几个好玩儿的GitHub项目
60 0
|
设计模式 Java 程序员
又搞事!阿里员工竟把上司的400页JDK并发源码指南拿去GitHub置顶
不知道大家闲下来的时候有没有去阅读过JDK源码,虽然看源码有点找虐的感觉,但作为一名程序员,在闲暇时看一下jdk源码,有利于对自己日常的开发环境了解得更加深刻。而且还有以下五点好处。
|
Kubernetes 监控 Devops
大厂直通车!GitHub独一份的Jenkins+k8s核心知识笔记(全彩版)
随着容器的兴起和迅速发展,Kubernetes(K8s)应运而生,现在不仅京东、阿里、谷歌、百度等大公司在使用,就连中小型企业也开始把业务迁移到了k8s上。 K8s在如下图的领域中占据了重要的地位,数万的企业和用户都选择使用K8s。任何一个招聘网站上和K8s相关的职位,月薪都是2w以上,或者更多。
|
存储 Java 开发工具
被吐槽 GitHub仓 库太大,直接 600M 瘦身到 6M,这下舒服了
被吐槽 GitHub仓 库太大,直接 600M 瘦身到 6M,这下舒服了
251 0