【效率神奇】Github丧心病狂的9个狠招
Github,一个被业内朋友成为「全球最大的同性交友社区」的平台。

小时候遇到不会的字可以查新华字典。后来写作文我们可以通过作文书、或者文摘去找合适的素材。同样,写代码可以去Github上找适合自己的代码片段,甚至开源框架。不再重复造轮子,带来的好处不言而喻。
Github在年初宣布个人私有仓库免费,小伙伴们拍手叫好。除了日常的托管代码功能以外。还可以在上面搭建博客,写技术教程或者书籍,发布一些日常的碎碎念,当然你也可以follow一些大佬,关注他们的日常动态。
今天主要分享一些检索上的技巧,能够帮你更精确的找到需要的项目代码。
开始之前有必要说一下几个常用词的含义,肯定有很多人不知道
watch:会持续收到该项目的动态
fork,复制某个项目到自己的Github仓库中
star,可以理解为点赞
clone,将项目下载至本地
follow,关注你感兴趣的作者,会收到他们的动态
通过in关键词限制搜索范围
xxx in:name 项目名包含xxx的
xxx in:description 项目描述包含xxx的
xxx in:readme 项目的readme文件中包含xxx的
当然也可以通过xxx in:name,desciption来组合使用
如下,我需要搜索项目名或者描述中包含「Hello」的项目,
通过Hello in:name,decription 完成

通过 Star 或者Fork数 去查找项目
通过通配符 > < = 即可,区间范围内可通过 num1..num2
如,要查找stars数不小于666的springboot项目
springboot stars:>=666
forks 大于等于500
springboot forks:>500
查找fork在100到200之间 且stars数在80到100之间的springboot项目
springboot forks:100..200 stars:80..100
awesome + 关键字
搜索和关键字匹配的优秀项目
awesome springboot 搜索优秀的springboot相关的项目,包括框架、教程等

分享项目中某一行的代码
只需要在具体的网址后面拼接#Lxx(xx为行数)
如
我需要分享这个类中的@SprintBootApplication注解,值需要在后面拼接上#L6 即可
https://github.com/lxy-go/SpringBoot/.../JpaApplication.java#L6

项目内搜索
打开你想要搜索的项目,然后按一下‘T’键。会跳转至一个新的网页,
如下图:

例如我想要搜索该项目的配置文件 application.yml

类似的页面内快捷键还有很多,常用的还有’L‘, 在文件内跳转到多少行。
更多快捷键可以查看官方文档
https://help.github.com/en/articles/using-keyboard-shortcuts
搜索某个地区内的大佬
可以通过location:地区 进行检索,在具体可以通过language:语言 缩小检索范围
如搜索地区在北京的Java方向的用户
location:beijing language:java

推荐一些Github插件
1、Octotree
平时浏览github代码时,每个文件都需要点击才能查看,用了这个插件可以将项目的目录结构以树形结构显示,点击之后会自动跳转到相应的目录。墙裂推荐!

2、OctoLinker
浏览代码如果可以像ide那样可以链接跳转岂不是美滋滋,这个插件就可以帮助我们完成这些。只需要ctrl+点击变量名即可。
3、Sourcegraph
一个可以在github上浏览和搜索代码的工具,安装好插件之后会出现一个view Repository的按钮

点击进去之后,简直不要太爽。可以随意在项目中搜索,可以查看变量和方法,以及进行跳转等等。多说无益,推荐大家安装插件自己感受一下

欢迎大家关注我的公众号「程序员共成长」,每天都会有干货分享

【效率神奇】Github丧心病狂的9个狠招的更多相关文章
- 《死磕 Elasticsearch 方法论》:普通程序员高效精进的 10 大狠招!(完整版)
原文:<死磕 Elasticsearch 方法论>:普通程序员高效精进的 10 大狠招!(完整版) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链 ...
- lombok效率神奇使用
Lombok效率神器 标签(空格分隔): Java Lombok简介及使用 Lombok 是一种 Java实用工具,可用来帮助开发人员消除Java的冗长,尤其是对于简单的Java对象(POJO), 它 ...
- GitHub 上受欢迎的 Android UI Library 整理二
通知 https://github.com/Tapadoo/Alerter ★2528 - 克服Toast和Snackbar的限制https://github.com/wenmingvs/Notify ...
- GitHub 上受欢迎的 Android UI Library整理
https://github.com/Tapadoo/Alerter ★2528 - 克服Toast和Snackbar的限制 https://github.com/wenmingvs/NotifyUt ...
- GitHub 热点速览 Vol.20:VSCode 插件全家桶新增画图小能手
作者:HelloGitHub-小鱼干 摘要:后浪,这个五月热词用来概括 GitHub 本周热点无疑是最佳词汇.Deno 这个 Node.js 作者制造出来的后浪,掀起了 GitHub Trending ...
- Hello!GitHub 好用好玩值得收藏的开源项目集合~
这是我许久以来从各处发现的极佳开源项目,希望分享给大家~ 如果帮到你了,给我个赞好嘛 编程语言类 ️learn-go-with-tests(通过单元测试学Go) GitHub地址:https://gi ...
- 基于webmagic的爬虫项目经验小结
大概在1个月前,利用webmagic做了一个爬虫项目,下面是该项目的一些个人心得,贴在这里备份: 一.为什么选择webmagic? 说实话,开源的爬虫框架已经很多了,有各种语言(比如:python.j ...
- ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室 实战系列(不断更新中)
项目简介 利用ASP.NET SignalR技术与Layim前端im框架实现的一个简单的web聊天室,包括单聊,群聊,加好友,加群,好友搜索,管理,群组管理,好友权限设置等功能.涉及技术: Elast ...
- 爬虫总结_java
基于webmagic的爬虫项目经验小结 大概在1个月前,利用webmagic做了一个爬虫项目,下面是该项目的一些个人心得,贴在这里备份: 一.为什么选择webmagic? 说实话,开源的爬虫框架已经很 ...
随机推荐
- memcached usage
https://github.com/ragnor/simple-spring-memcached/wiki/Getting-Started 1) maven <dependency> & ...
- TCP的流量控制和拥塞处理
1. 利用滑动窗口实现流量控制 如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失.所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收. 利用滑动窗口机制可以 ...
- ASP.NET中直接用C# 动态修改CSS样式
ASP.NET中直接用C# 动态修改CSS样式 wonsoft (wonsoft@163.com) 使用JavaScript控制CSS样式有点麻烦,还是觉得直接使用C#操作更方便快捷,本文通过两个B ...
- Sublime中文编码问题
1. 改配置 Preferences->Settings 三个全部加上 "default_encoding": "UTF-8" 2. 代码编写 2.1 ...
- Manjaro 安装后的配置
1. 将本地数据包与远程数据包同步 sudo pacman -Syy 默认manjaro是没有同步数据包的,也就是说,这个时候你执行pacman -S pack_name 会报数据包找不到的错误(wa ...
- Python学习 Part6:错误和异常
Python学习 Part6:错误和异常 两种不同类型的错误:语法错误和异常 1. 语法错误 语法错误,也被称作解析错误: >>> while True print('Hello w ...
- 【多线程】-ThreadPool线程池
ThreadPool介绍: Thread类是一个静态类,所有不存在实例化构造函数操作,直接可以调用其内所存在的方法. 微软官网给出的解释: 提供一个线程池,该线程池可用于执行任务.发送工作项.处理异步 ...
- laravel5.5 延时队列的使用
队列这个知识相对比较冷门,因为平时的CURD基本用不到这个知识,今天用到了,所以就写个博客记录一下吧. 首先你得清楚要用什么驱动,除了database队列驱动(选择database驱动要php art ...
- ubuntu18.04 & Windows10 双系统关机缓慢
1.Windows与Ubuntu双系统关机缓慢并不少见,有时单系统下的Linux mint或Ubuntu都会出现这个现象.主要原因是还有没有关闭的进程或者是软件兼容的原因,所以导致每次关机都有一个90 ...
- mysql 从一个表中查数据,插入另一个表
其实很简单,只是为了忘记,做个记录,用的时候方便. 不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指 ...