推荐阅读:
相信不少童鞋都有过一种经历:项目中需要使用到某种框架,最先想到的就是先去GitHub搜,看是否已经有现成的轮子,但是搜索结果往往不尽人意呀,看看下面这几个情况像不像你?😄😄
◆ 搜索结果中,目标项目很少,出现了许多不相关的东西,比较杂乱
◆ 搜索结果中,star数不高,没有点进去的欲望
◆ 搜索结果中,确实有相关的框架,但什么语言版本都有,还得再去筛选语言进行过滤,最后依然有很多结果
然后!暴躁的你,怒发冲冠,直接关了GitHub!但还是感觉胸口发闷,血气翻涌,忍不住一指戳向浏览器的关闭按钮,却依然难解心头之恨,气得咬牙切齿 “啪” 的一声电脑砸的稀巴烂,可还是极度不爽,体内真气运转到极限,双脚猛的一踏地面,空气中隐隐传出一阵空间撕裂的声音,随后一拳轰在了老板脸上,老板 “哇” 地喷出一口鲜……
咱们言归正传哈哈哈,相信我,看完这一篇文章,你就可以学会如何在GitHub上精确搜索到想要的项目!
组成元素
首先!我们有必要先来了解一下开源项目有哪些组成部分:
◆name: 项目名
◆ description: 项目的简要描述
◆ 项目的源码
◆ README.md: 项目的详细情况的介绍
除了这些内部组成元素,项目的star数和fork数,也是搜索技巧中至关重要的部分
如何搜?
假如,咱们正在做一个python项目,正好要用到一个文本处理的框架,关键词就是 Text ,那咱们就先试试搜索项目名称里面包含 Text的项目:
◆ 格式:in:name Text
怎么有这么多结果?! 别急,这才刚开始咱们需要约束搜索结果的star数大于3000+
◆ 格式:in:name Text stars:>3000
结果瞬间缩小范围了吧?
继续!咱们再约束 fork数 > 600
◆ 格式:in:name Text stars:>3000 forks:>600
不到20个结果,可以慢慢找了,如果还是懒得找怎么办?
咱们继续约束语言为 Python
◆格式:in:name Text stars:>3000 forks:>600 language:python
现在足够精确了吧?
但是!如果我们不确定关键词是否会命中项目名称,那可以通过 readme来搜索:
同样很简单,我们只需要把上面的 in:name 中的 name 换成 readme
◆格式:in:readme Text stars:>3000 forks:>600 language:python
结果瞬间上升到了164个! 这种情况,就可以适当调整star和fork数来约束限制搜索啦!这里就不再演示
那么问题来了! 如果,我们想要找的项目,想不到一个英文关键词去描述,怎么办?
比如做iOS的童鞋们,项目中经常会需要图片轮播展示的控件,这种情况下,我们直接用一种简单粗暴的方式,按照 descriptin 的方式来搜索:
◆格式:in:description stars:>3000 轮播 language:iOS
当然了,还可以约束项目的提交时间:
◆格式:in:description 微服务 language:python pushed:>2020-02-05
很简单吧?就问你们,香不香???
总结
我们想要进行精准搜索,无非就是增加筛选条件:
大家都学会了吗,学会了就继续暴打老板吧
网友评论