如何在 GitHub 上面精准搜索开源项目?


点击上方掌上编程”,选择“置顶或者星标python

优质文章第一时间送达!web

不少的小伙伴,常常会有这样的困惑,我看了不少技术的学习文档、书籍、甚至视频,我想动手实践,因而我打开了GitHub,想找个开源项目,进行学习,获取项目实战经验。这个时候不少小伙伴就会面临这样的问题:“我不会搜啊,我该怎么找呀?”,最终只能放弃。面试

相信看完这篇文章,你就能够学会如何精准地在GitHub搜索项目。编程

开源项目的组成部分

在讲清楚以前呢,咱们先来了解一下一个开源项目有哪些组成部分:后端

  • name: 项目名服务器

  • description: 项目的简要描述微信

  • 项目的源码架构

  • README.md: 项目的详细状况的介绍app

那么除了这些要素以外,项目自己的star数和fork数,也是评判一个开源项目是否火热的标准,这同时也是一个很重要的搜索标准。另外咱们也要注意观察这个项目的最近更新日期,由于项目越活跃,那么它的更新日期也更加频繁。less

以上要素就是咱们在进行搜索的时候要注意的一些关键点。

如何搜索

那咱们到底如何搜索呢?

假设咱们如今要搜索React,相信大部分小伙伴都是直接在搜索框里输入:“React”,而后一回车,你就会发现状况像下面这样:

搜索结果会显示很是多的开源项目,简直让你目不暇接,无从下手,不少小伙伴搜到这一步就放弃了,由于项目太多了,根本找不到如何找到本身感兴趣的开源项目,因此这样搜索很是的不许确。因此咱们来学习一下稍微精确一点的搜索方法。

按照 name 搜索

搜索项目名里面包含React的项目:

in:name React

获得以下结果:

能够看到,这些搜索结果都是项目名里面带有“React”关键字的项目,可是项目数量依旧不少。

如今咱们来约束一下

好比我再精确到项目的star数大于5000+:

in:name React stars:>5000

结果是这样的:

搜索结果瞬间精确了不少,如今只有114个项目可供选择。固然咱们通常不会把star数设置得这么高,通常设置个1000就差很少了。

同理,咱们也能够按照fork的数量来进行搜索:

in:name React stars:>5000 forks:>3000

你会发现,结果愈来愈精确!

按照README来搜索

搜索README.md里面包含React的项目:

 in:readme React

结果有这么多,那么咱们再限制一下它的star数和fork数:

in:readme React stars:>3000 forks:>3000

搜索结果一会儿精确到了90个。这个时候你再去选择项目,就会变得容易不少。

按照descriptin搜索

假设咱们如今要学习微服务的项目,咱们搜索项目描述(description)里面包含微服务的项目:

in:description 微服务

结果有这么多,那咱们接着增长一些筛选条件:

in:description 微服务 language:python 

language:python的意思是咱们把语言限制为python,咱们来看看结果如何:

搜索结果精确了不少。

假如在这些项目里面,咱们想要找到最近才更新的项目,意思是更新时间就在最近,咱们能够这样:

in:description 微服务 language:python pushed:>2020-01-01

pushed:>2020-01-01的意思是咱们把项目的最后更新时间限制到2020-01-01,咱们来看看结果如何:

搜索结果只有8个了,这几个项目就属于更新比较活跃的项目,这下不再纠结了。

总结

好,咱们来总结一下。咱们想要进行精准搜索,无非就是增长筛选条件。

  • in:name xxx // 按照项目名搜索

  • in:readme xxx // 按照README搜索

  • in:description xxx // 按照description搜索

那么在这里面呢,咱们又能够增长筛选条件

  • stars:>xxx // stars数大于xxx

  • forks:>3000 // forks数大于xxx

  • language:xxx // 编程语言是xxx

  • pushed:>YYYY-MM-DD // 最后更新时间大于YYYY-MM-DD

以上就是咱们在GitHub上面精准搜索项目的一些小技巧,但愿对你有所帮助!

来源:juejin.im/post/5e3d01c56fb9a07c91100801


   

正文结束


              



掌上编程往期精彩文章





一个吊打百度网盘的开源神器,仍是99年妹子开发的!

黑客入侵你Linux服务器的一万种玩法...

一个基于 RabbitMQ 的可复用的分布式事务消息架构方案!

史上最污技术解读,我居然秒懂了

在线教育风口已来,这几个开源项目不能错过 | Gitee 项目推荐

你知道为何Java的main方法必须是public static void?

JAVA后端面试《Spring》

掌上博客

                                   
                                     
                      
                                    
                                    
                                     
                                     
                                     
                      
                                    
给个[在看],是对掌上编程最大的支持

本文分享自微信公众号 - 掌上编程(ThePalmJava)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。