github做为全球最大的开源软件项目托管平台,相信不少程序员都在使用,不只仅是由于它能够免费的做为咱们公有或者私有的代码仓库,更由于github上面有大量的开源学习项目或资源,秉着开源自由的理念,吸引了大量的我的或者企业开发者。php
那么面对如此海量的代码仓库,如何才能在众多的资源中搜索出更优秀,更符合本身需求的项目呢?java
好比我想搜索一个springboot项目,你是否就直接输入springboot关键字直接搜索,可是搜索出了118,085个结果,固然了,你还能够作一些简单的排序,好比经过stars、forks的数量。python
搜索中若是你发现github网页加载很慢,或者图片打不开,请打开hosts文件(C:\Windows\System32\drivers\etc),加上如下内容:git
192.30.253.113 github.com
151.101.113.194 github.global.ssl.fastly.net
151.101.184.133 assets-cdn.github.com
151.101.184.133 raw.githubusercontent.com
151.101.184.133 gist.githubusercontent.com
151.101.184.133 cloud.githubusercontent.com
151.101.184.133 camo.githubusercontent.com
151.101.184.133 avatars0.githubusercontent.com
151.101.184.133 avatars1.githubusercontent.com
151.101.184.133 avatars2.githubusercontent.com
151.101.184.133 avatars3.githubusercontent.com
151.101.184.133 avatars4.githubusercontent.com
151.101.184.133 avatars5.githubusercontent.com
151.101.184.133 avatars6.githubusercontent.com
151.101.184.133 avatars7.githubusercontent.com
151.101.184.133 avatars8.githubusercontent.com
复制代码
但这样搜索出来的结果然的精确吗?接下来,咱们来演示一下几个咱们经常使用的github搜索技巧,让搜索出来的结果更加精确、符合要求!程序员
首先咱们来看一张思惟导图:github
上面的搜索技巧,我分为了2类,一类经常使用和更多,经常使用的部分应该是咱们平常使用频率最高的,须要咱们记住。面试
关键字 in 是用来限定搜索的范围,能够指定是在名称、描述、readme文档中搜索关键字spring
好比,指定项目仓库名称springboot、mybatis、demo三个关键字,那么搜索以下:springboot
in:name springboot mybatis demo
复制代码
结果以下:bash
这样搜索出来的项目就是一个简单的demo整合项目,而不是综合项目。 你还能够这样搜:
in:description springboot mybatis 整合
复制代码
一般咱们判断一个项目好很差,能够经过项目的stars和fork数量来判断,固然了,这也不是绝对的,github中还隐藏这不少不为人所知的优秀项目,等着你挖掘哈。
方式以下:
因此,经过stars 、forks关键字,咱们能够经过stars 、forks数量来过滤一部分。好比,我要筛选搜索结果中,stars数量大于50的项目。那么以下:
in:name springboot mybatis demo stars:>50
复制代码
筛选以后的结果只有2个符合要求:
这个简单,指定项目的编写语言,如java、python、php等。好比咱们搜索单点登陆
,若是咱们直接搜索in:description 单点登陆
,那么出现的结果会包含各类语言的实现项目,可是若是你加上了java语言的限定条件以后,搜索出来的结果就只有java的。
in:description 单点登陆 language:java
复制代码
建立日期、更新日期。项目久不维护了,或者项目已经建立好久了,那么项目的技术有时候就已通过时了,好比之前Springboot的1.5版本的建立项目就不是很适合如今了,如今咱们学习的话直接上手2.0版本以上的比较好,因此找新项目,还得跟紧技术的迭代速度。
in:description 单点登陆 language:java pushed:>2019-12-01
复制代码
一般来讲,stars数量多,维护频繁的项目都是比较优秀的开源项目。
还能够根据协议license:
;或者项目做者user:
;或者仓库的大小size:>=
;被关注人数followers:
,只不过你们就用得比较少。
除了使用这种特定的限定词来筛选以外,其实github还给咱们提供了一种筛选的搜索连接。
https://github.com/search/advanced
复制代码
其实就是界面化的搜索条件筛选框,想不起搜索关键词或者单词的时候能够收藏这个高级搜索界面哈。
好了,今天文章先到这里。我是吕一明,感谢持续关注个人公众号:java思惟导图!
最后送两份2019年面试题大全(含答案)给你们:点击领取