欢迎访问我的GitHub
github.com/zq2599/blog_demos
内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;
关于搜索
- 对自己而言,这是篇迟来的重要的笔记,github是宝库,搜索方法不当可能与珍贵的代码擦肩而过,于是将常用搜索方法分类总结以备不时之需;
- 个人常用搜索方法总的来说分为作者和内容两种,按照自己的习惯做了简单分类,如下图:
- 虽然搜索更常用,但是本着先易后难的原则,先从作者搜索开始;
作者搜索
- 如下图红框,github帐号可以设置自己的fullname,我们可以通过这个字段精确搜索到个人:
- 在网页左上角输入fullname:程序员欣宸就可以搜索到这个作者,如下图:
- 很多github帐号会设置自己的地址,如下图红框,这些也可以作为找人的条件:
- 例如搜索tom,会有很多同名的:
- 如果咱们知道要找的tom在深圳,就可以大幅度缩小搜索范围,关键字是fullname:tom location:shenzhen,只有22个结果:
- 以上就是搜索用户的操作,接下来是更常用的内容搜素;
内容搜索概览
- 搜索内容时的参数略多,按照使用习惯,我这简单分为三类:
- 精确:格式是language:完整关键词,如language:java
- 模糊:类似字符串的模糊匹配,格式是in:条件名 关键词,如in:name spring-boot
- 范围:和量化范围有关的,格式是条件名:>数量,常和其他条件一起使用,如in:name spring-boot stars:>10000
- 接下来细说上述三类搜索;
精确
- 最常用的精确搜索就是指定语言类型了,先看不指定语言类型时,搜索断点续传的结果如下图,各种语言都有:
- 如果只要java语言的,用断点续传 language:java去搜,结果如下图:
模糊
-
模糊是锁定内容的关键,常用的有三种条件:name(项目名称)、description(项目描述)、readme(仓库中的READ.md文件)
-
通过项目名称搜索,如名称中有spring和boot两个关键词的项目,搜索条件是in:name spring boot
- 通过项目描述搜索,这个是我自己用的最多的方式,例如我想找到现成的断点续传代码,java版的,搜索条件是in:description 断点续传 language:java
- 通过仓库中的README.md的内容搜索也很常用,这里面通常会有详细的文档信息,例如我想grpc的server端代码,java版,搜索条件是in:readme grpc server language:java
- 例如我想找kubernetes进阶实战相关的内容,搜索条件是in:readme kubernetes进阶实战,结果如下,红框中是欣宸自己的仓库,里面有关键字kubernetes进阶实战,查得…挺准的:
范围
- 如果用前面手段搜索的内容太多,还可以指定范围,常用的类型有:stars(star数)、forks(fork数)、pushed(最后提交时间)、size(文件大小)
- 搜索名称中有spring-boot且star数大于一万的项目,in:name spring-boot stars:>10000
- 搜索名称中有spring-boot且fork数大于一万的项目,in:name spring-boot forks:>10000
- 搜索名称中有spring-boot且2021年3月12日之后更新过的项目in:name spring-boot pushed:>2021-03-12
- 搜索名称中有spring-boot且内容大于100k的项目in:name spring-boot size:>100,注意这个数字的默认单位是k:
排序
- 搜索出结果后,还可以对结果排序进行调整,操作位置如下图红框:
把上图红框中的每个排序类型列出来:
名称 | 意义 |
---|---|
Best match | 关键词匹配程度 |
Most stars | 最多star |
Fewest stars | 最少star |
Most forks | 最多fork |
Fewest forks | 最少fork |
Recently updated | 最近更新 |
Least recently updateed | 更新时间距今最久远 |
- 以上就是我的github搜索技巧小结了,希望能给您一些参考,更高效的发掘github宝藏;
我是欣宸,期待与您一同畅游Java世界…