查资源,学习优秀的框架,搜索是一种能力!

作为程序猿开发中最大的同性交友网站,github当之无愧,里面有很多优秀的开源框架,各种技术大佬混迹其中,有他们总结的学习教程,造好的轮子(开发的各种工具,技术框架),开源的项目等,我们能够从中借鉴学习,也可以获取灵感,或节省时间,完成任务等等。但是我们要从如此多的内容中找到优秀的和我们需要的,需要我们使用一些搜索技巧,缩小搜索范围,帮助我们更快搜索到相关的内容。

1、根据star,fork数筛选

例如我们在github上查找某个项目,评价其优秀与热门最直接的参数就是看这个项目被star(类似微博点赞,在个人主页可以查看自己点赞了哪些内容)了多少次,获得了多少认可,被fork了多少次(当你觉得这个项目不错时,可以fork这个项目源码到自己仓库中,但是在你仓库中存在的这个项目不会同步更新)。虽然一个优秀的项目不一定是star多,有可能暂时还没被其他人给发现,但根据这2个参数筛选却是我们简单有效的依据。

1, 大于等于
语法: 关键字 stars:>= 数量 forks:>=数量
例子: springboot stars:>=5000 //搜索springboot有关star数>=5000的内容
springboot stars:>=5000 forks:>=5000//搜索springboot 的star>=5000,且fork数>=5000的内容
可单独搜索,也可组合搜索,中间用空格隔开,是&(且)的关系。

如图1所示

2,范围查询
语法: 关键字 stars:范围1..范围2
例子: springboot stars:4000..5000
//搜索star数在 4000到500的springboot相关内容,..相当于mysql中between and 的作用。

如图2所示

2、 关键字 in

搜索关键字在github上发布的位置 ,主要以下3个位置

  • name (发布的仓库名称)

  • description(指的是文章的摘要部分)

  • Readme (说明文档)

    语法 :关键字 in:
    例子 :netty in:name //查找名称中包含netty的内容
    netty in:name,description
    //逗号分隔,是 || (或)的关系,指的是查询名称,或者描述中包含netty的内容

3、awesome + 关键字

一般是指的学习,书籍,工具类,插件类相关的系列的集合。可以有效节约时间,找到别人收集好的内容。

awesome 指的是了不起的,碉堡了。

github 官方解释:
An awesome list is a list of awesome things curated by the community.
大致意思:社区组织维护的一系列非常棒的东西的集合。(差不多吧,哈哈,水平有限,谷歌翻译了解一下)

例如: awesome springboot

如图3所示

4、搜索某个语言,某个地区的大佬

例如: location:Beijing language:java

例如: awesome springboot

如图4所示

5、常用快捷键

在github上 按 ?可调出快捷键页面,有些对我们还是非常有用的。

快捷键页面链接如下:

https://help.github.com/en/github/getting-started-with-github/keyboard-shortcuts

如图5所示

  • 查看源码利器 t

    在github 学习某个框架时,如果包的结构层级特别多,嫌一层层点进去麻烦,用 t ,该框架所有的类以列表形式平铺展开,方便查看

    如图6所示

  • s 键 (search)

    帮助快速聚焦在搜索框里,提高效率

6、 实现某行,某块代码高亮

在与其他人协作开发时,沟通时在给别人指出某行,或者某块代码,可以在github链接后面加上

1,#L23  //某行高亮
如:
https://github.com/unofficial-openjdk/openjdk/blob/jdk/jdk/test/jdk/sun/misc/GetSunMiscUnsafe.java#L36

如图7所示

2,#L23-35  //某个代码块
如:
https://github.com/unofficial-openjdk/openjdk/blob/jdk/jdk/test/jdk/sun/misc/GetSunMiscUnsafe.java#L36-L40

如图8所示

7、user

查询某位用户的相关内容,比如某位大佬

语法:user:名称

例子:user:ityouknow

赶快去尝试一下吧,其他功能自己探索了

参考:

https://www.iteye.com/blog/robbiefeng-2169967

github实用的搜索小技巧的更多相关文章

  1. Github代码高级搜索小技巧

    Github搜索之代码搜索 可以使用下列搜索限定符的任意组合进行代码搜索 提示:通过将一连串的搜索语法添加到搜索限定符来进一步提高搜索结果的精度. ·代码搜索注意事项 由于搜索代码的复杂性,有一些搜索 ...

  2. python实用30个小技巧

    python实用30个小技巧 展开1.原地交换两个数字Python 提供了一个直观的在一行代码中赋值与交换(变量值)的方法,请参见下面的示例: In [1]: x,y = 10 ,20 In [2]: ...

  3. google搜索小技巧

    google搜索小技巧 一.总结 一句话总结:But most people may not be using Google search to its full potential.Want to ...

  4. 12个十分实用的JavaScript小技巧

    12个非常实用的JavaScript小技巧 在这篇文章中将给大家分享12个有关于JavaScript的小技巧.这些小技巧可能在你的实际工作中或许能帮助你解决一些问题. 使用!!操作符转换布尔值 有时候 ...

  5. 12个非常实用的JavaScript小技巧

    在这篇文章中将给大家分享12个有关于JavaScript的小技巧.这些小技巧可能在你的实际工作中或许能帮助你解决一些问题. 使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是 ...

  6. 13个非常实用的JavaScript小技巧

    使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是否有一个有效值,如果存在就返回true值.为了做这样的验证,我们可以使用!!操作符来实现是非常的方便与简单.对于变量可以使用 ...

  7. 非常实用的JavaScript小技巧

    使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是否有一个有效值,如果存在就返回true值.为了做这样的验证,我们可以使用!!操作符来实现是非常的方便与简单.对于变量可以使用 ...

  8. 一些实用的 Laravel 小技巧

    Laravel 中一些常用的小技巧,说不定你就用上了. 1.侧栏 网站一般都有侧栏,用来显示分类,标签,热门文章,热门评论啥的,但是这些侧栏都是相对独立的模块,如果在每一个引入侧栏的视图中都单独导入与 ...

  9. 提高github代码下载速度的小技巧

    1.打开如下路径: C:\Windows\System32\drivers\etc 2.将此处的HOSTS文件复制到其他地方,比如桌面.(此处大概率是没有编辑权限的) 3.用记事本打开HOSTS文件, ...

随机推荐

  1. Hadoop点滴-HDFS文件系统

    1.HDFS中,目录作为元数据,保存在namenode中,而非datanode中 2.HDFS的文件权限模型与POSIX的权限模式非常相似,使用  r  w  x 3.HDFS的文件执行权限(X)可以 ...

  2. Linux 部署vsftp服务及详解

    一.FTP服务概述: FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务. FTP(File Transf ...

  3. maven scope属性说明

    一.scope属性: 依赖范围控制哪些依赖在哪些classpath 中可用,哪些依赖包含在一个应用中. compile (编译) compile是默认的范围:如果没有提供一个范围,那该依赖的范围就是编 ...

  4. DevExpress GridControl导出ExportToXls 数字类型显示成货币格式

    用Dev开发很习惯直接用自带控件导出Excel,现在很少使用原生的Excel API去操作了.除非需要详细的控制. 但别人家封装好的就得按人家的规则的.在使用GridControl导出Excel时发现 ...

  5. php无限级分类实战——评论及回复功能

    经常在各大论坛或新闻板块详情页面下边看到评论功能,当然不单单是直接发表评论内容那么简单,可以对别人的评论进行回复,别人又可以对你的回复再次评论或回复,如此反复,理论上可以说是没有休止,从技术角度分析很 ...

  6. 纯 CSS 实现幻灯片播放

    介绍:   今日看到一道面试题,关于 使用纯CSS,不利用js, 写一个简单的幻灯效果页面.于是做了一个小demo,建议使用chrome,IE11查看~~ 主要思想: 利用 CSS3的 伪类选择器 : ...

  7. JDK 1.8 之 Map.merge()

    Map 中ConcurrentHashMap是线程安全的,但不是所有操作都是,例如get()之后再put()就不是了,这时使用merge()确保没有更新会丢失. 因为Map.merge()意味着我们可 ...

  8. 再探vue

    1. vue项目搭建 搭建vue环境需要安装node软件,node是由c++编写而成,主要运行js文件或者js代码的,安装node会自动安装一个管理器叫npm,建议换源下载,国外的网站较慢(比如cnp ...

  9. 卷积神经网络CNN识别MNIST数据集

    这次我们将建立一个卷积神经网络,它可以把MNIST手写字符的识别准确率提升到99%,读者可能需要一些卷积神经网络的基础知识才能更好的理解本节的内容. 程序的开头是导入TensorFlow: impor ...

  10. 详解计算机中的Byte、bit、字、字长、字节

    最近突然有同事问我,关于计算机中的计量单位大B和小b的区别,以及KB到GB之间的换算问题,我当时觉得这问题简单,大B是 byte,小b是bit,但是想到他俩之间的换算时,一时有些想不起来具体是1Byt ...