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

作为程序猿开发中最大的同性交友网站,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. Gradle 梳理:安装、入门使用方法

    Gradle 教程:第一部分,安装[翻译]   原文地址:http://rominirani.com/2014/07/28/gradle-tutorial-part-1-installation-se ...

  2. jenkins构建项目时报错缺少com.sun.image.codec.jpeg包解决方案

    错误日志:error: package com.sun.image.codec.jpeg does not exist 网上找的一个项目,使用的是jdk1.7,除此之外其他服务器配置或是环境配置都是j ...

  3. mysql 排序规则

    一.对比 1.utf8_general_ci 不区分大小写,utf8_general_cs 区分大小写 2.utf8_bin: compare strings by the binary value ...

  4. centos 升级curl版本

    1.安装repo rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/rhel6/x86_64/city-fan.org-release-2-1 ...

  5. Python采集VIP收费QQ音乐,一起来听周董最新的《说好不哭》,省3块不香吗?

    环境: windows python3.6.5 模块: requests selenium json re urllib 环境与模块介绍完毕后,就可以来实行我们的操作了. 第1步: 通过一个解析网站: ...

  6. ES6入门之Promise对象

    1. Promise 的含义 Promise 是异步编程的一种解决方案,比传统的解决方案--回调函数和事件更合理.更强大. 1.1 什么是Promise 简单来说就是一个容器,里面保存着某个未来才会结 ...

  7. IDEA 学习笔记之 Spark/SBT项目开发

    Spark/SBT项目开发: 下载Scala SDK 下载SBT 配置IDEA SBT:(如果不配置,就会重新下载SBT, 非常慢,因为以前我已经下过了,所以要配置为过去使用的SBT) 新建立SBT项 ...

  8. Open Source v.s. Open Core

    摘要 本文翻译自 CMSWire 网站的<Open Source vs. Open Core: What's the Difference?>,主要介绍 Open Source 和 Ope ...

  9. Django默认权限机制介绍及实践

    演示Django版本为当前最新版本v2.2 当Django配置文件中的INSTALL_APPS包含了django.contrib.auth时,就默认启用了一个简单的权限系统,提供了为用户或组分配权限的 ...

  10. 【Java】Java 单文件下载及重命名

    代码(仅供参考): /* * 另存为 */ @RequestMapping("/saveAs.do") public @ResponseBody void saveAs(Strin ...