如何更精准的在 Github 上搜索开源库?你需要这些技巧!

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第1张图片

正文共: 2468字 8图

预计阅读时间: 7分钟

一、前言

在日常工作中,我们并不推荐去重复造轮子,通常我们会去搜索一些稳定的第三方开源库来使用。而 Github 中,开源的那些代码库,就是一个非常宝贵的资源,很多大型稳定的开源项目,都被托管在 Github 之上,这些项目一旦被开源,经过广大开发者的贡献之后,其实很多已经趋于稳定,靠谱的开源库已经很难发现重大 Bug。

但是在 Github 上托管的开源项目非常之多,最简单的搜索方式就是在搜索框中,输入我们要搜索的关键字。这在有明确目标的前提下,将非常的高效,但是有时候我们并不能完整的确定。如何在这一大片资源中,找到我们需要的,就是需要技巧的了。

本文就这个话题,展开讨论,看看如何高效的在 Github 上,搜索我们需要的开源项目。

二、搜索技巧

2.1 搜索结果

先来看看,当我们直接在 Github 上,搜索项目的时候,出现的效果。

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第2张图片

如图所示,这里我搜索的是 Glide ,对于一些优秀的开源项目,一般比较靠前的搜索结果里,就可以搜索出我们想要的项目。

在这个页面,如果想要赛选出搜索结果,可以在右侧选择 Languages 来选择语言,例如我这里搜索的 Glide ,明显就是想要 Java 的开源库,所以选择 Java 就好了。

而如果想要在搜索结果中,进行排序,可以点击 Sort 来选择,默认是 Best Match ,表示一个最佳匹配的结果。

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第3张图片

Sort 中,可以通过 start 、fork、updated 几个指标进行单独排序,一般我们使用 Most starts(按 start 数,降序排序)或者Most forks(按 fork 数,降序排序),就可以了。

通常,这些选择之后,就已经可以精准的找到我们需要的开源库了。假如,还是不确定,可以考虑使用高级搜索(Advanced search),来进行搜索,在搜索结果的右上角,有快捷入口可以点击。

2.2 Advanced Search

在搜索结果页,就有 Advanced Search 的快捷入口,如果你没有找到,你可以直接进入:

https://github.com/search/advanced

假如普通的搜索方式,满足不了你的需要,那么 Advanced Search 就一定是你想要的。

在 Advanced Search 中,你可以最大限度的设定搜索的条件,例如:作者是谁,来自哪个 repositories ,start 和 fork 数的范围等等,非常的全面。

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第4张图片

在 Advanced search 的最上面,有一个搜索框,可以在这里填写关键字,然后在下面选择筛选的条件。从上面的例子中,可以看到,当你选择筛选条件之后,搜索框中,同步也会修改搜索的内容,而这些内容是遵循 Github 搜索语法的。

举个例子,在 Repositories Options 中,你可以设置一些 start 和 fork 数的范围。

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第5张图片

可以看到,对应的输入框,其实已经将提示做的很好了,0..100 标识 0~100 的范围内,>1000 标识最少要大于 1000 ,这些都非常的好理解,你可以根据需求在这里配置。

举个例子,假如我需要搜索一个图片加载库,我搜索关键字 "Image loader" ,并且要求 start 数要大于 1000,最终配置完成的结果就是。

image loader starts:>1000

这样的一个搜索语句,是可以直接在 Github 的搜索框中生效的,如果熟悉这些语法,就不需要依赖 Advanced Search 这个页面了。

这里推荐几个常用的语法,其实更多的我自己也记不住,如果忘了,点开 Advanced Search 就可以了,毕竟是个熟能生巧的事情。

  • starts: 限定 start 数,例如 starts:0..100

  • forks:限定 forks 数,例如,forks:>1000

  • user:限定作者,例如,user:airbnb

  • license:限定开源协议,例如,license:mit

  • topic:限定标签,例如,topic:network

更多使用技巧,推荐直接查阅官方文档,或者在 Advanced Search 页面中多试试。

https://help.github.com/categories/searching-for-information-on-github/

2.3 Topic 搜索

还有一个 Topic 搜索的使用技巧,我觉得也非常有用,可以单独拿出来说说。对于开源库,都是为了解决具体问题,例如访问网络、加载图片等等,所以会为其加上不同的 topic 来做为一个标签的形式,对开源库进行标记。

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第6张图片

对于 Glide 而言,它的 Topic 就是如上图所示的这些。这些 Topic 都是可以点击的,例如我想继续看看同样被 gif 标记过的开源项目,直接点击 gif 就可以了,这样筛选出来的库,可能也能解决加载 gif 图的问题。

GitHub 还专门提供了一个页面,展示目前流行的 Topic:https://github.com/topics。

三、小结

本文知识提点了一些 Github 上,可以使用的常用搜索技巧,能更快的帮你找到你需要的开源库。一些高级技巧确实不常用过一段时间就忘记了,不过还好有 Advanced Search 页面,可以帮我们快速的找到我们需要的筛选条件。

对于知识,有时候知道如何找到它,比掌握它更加重要。

你还有什么关于 Github 搜索的小技巧,可以在留言区留言,我们一起讨论一下。

今天在承香墨影公众号的后台,回复『成长』。我会送你一些我整理的学习资料,包含:Android反编译、算法、设计模式、虚拟机、Linux、Kotlin、Python、爬虫、Web项目源码。

推荐阅读:

  • Drawable 的这些常用小技巧,提高开发效率!

  • Android 软键盘的显示和隐藏,这样操作就对了

  • Android 反编译利器,jadx 的高级技巧

  • 关于如何编写 Clean Code 的 6 个简单技巧

  • 手写你的第一个 Dalvik 版的 HelloWorld !

如何更精准的在 Github 上搜索开源库?你需要这些技巧!_第7张图片

听说喜欢留言的人,运气都不会太差

点击『阅读原文』查看更多精彩内容

你可能感兴趣的:(如何更精准的在 Github 上搜索开源库?你需要这些技巧!)