学会这十招,轻松搜索github优质项目
大家好,我是青空。
今天我想给大家分享一下使用 GitHub 的一些心得体会。之前我是在分享 GitHub上的一些开源项目,通过这段时间的收集工作,我积累了一些相关的经验在这里分享给大家。 我做了一个思维导图,总结了我的使用经验,放在文末可以自取。

今天主要给大家讲讲 Github 的搜索技巧。我们在打开 GitHub 首页的时候,就可以看到一个搜索框。普通人的搜索方法是直接使用关键词搜索,比如说我们搜索 Java 这个关键词。我们可以得到下面这样的一个页面。

我们从截图中可以看到,github 是有一些筛选条件的。也就是说我们可以根据这些过滤条件达到一个更加精准的效果。所以说这里会有一个搜索技巧,GitHub 提供很完善的文档给用户使用。当然这个文档也是有中文版的,英文不太好的朋友可以不用放心食用。
下面我给大家介绍一下,我比较常用的搜索语法。
1、范围查询
比方说我想找一个 star 超过1000的, 我可以写这样的一个搜索条件: java stars:>1000 这样 GitHub 就能匹配到含有 java 字样、star 数超过1000的。

当然GitHub 也提供了范围查询 比如说我要查询 star 在10到1000的项目,那我就可以把搜索条件改成 java stars:10..1000 就可以了。是不是感觉挺简单的。

2、日期查询
当我想查询一周之内新增的Java项目时候,我可以把搜索条件改成 java created:2021-07-23 ,这样我就能搜索到 2021-7-23之后新建的Java项目了。

3、排除特定的结果
有的时候,我们会遇到一个场景就是包含这个词,但又不想包括另外的词。比如我想搜索一个不是用vue写的chrome插件,那我就可以把搜索条件改成 chrome插件 NOT vue 。这里我们使用 NOT 关键词,就能达到我们想要的效果。

我们还有一个方法能达到类似的效果,那就是在搜索条件中使用 - 号,这个百度 Google 之类的搜索引擎中也是适用的。

4、搜索条件排序
我们使用 Sort(排序)菜单可按相关性、星号数量、复刻数量以及项目最近更新时间来排序结果。

5、根据仓库名称、说明文件内容搜索
我们可以通过 in 限定符,您可以将搜索限制为仓库名称、仓库说明、自述文件内容或这些的任意组合。 如果省略此限定符,则只搜索仓库名称和说明。

6、根据主题搜索
如果您要探索关于特定主题的仓库、查找要贡献内容的项目或了解哪些主题在 GitHub 上最受欢迎,您可以使用搜索限定符 is:featured、is:curated、repositories:n 和 created:YYYY-MM-DD 搜索主题。

7、根据代码内容搜索
使用 in 限定符,您可以将搜索限制为源代码文件的内容、文件路径或两者。 如果省略此限定符,则只搜索文件内容。

8、找资料集合
如果我们想找到Java的一些集合资料的话,我们可以使用 awesome Java ,这样我们可以使用找到资料集合了。

9、找例子
当我们学习新技术的时候,我们就可以通过使用 spring boot demo 这样的关键词搜索到别人上传的例子。

10、找空项目
当我们想要找一个特定的空项目的时候,我们可以搜索 chrome extension starter, 这样我们就能找到用于开发chrome 插件的空项目了。

11、找技术教程
当我们想要找一个技术教程的时候,我们可以使用 chrome extension tutorial 这样的关键词搜索,

以上基本上是我们找开源项目的一些搜索技巧。
当然github 还提供了其他一些高质量的项目入口,我们可以从GitHub 的趋势榜单中找到一些优质的项目。

github.com/collections 也是一个不错的选择,这个是用户自己创建的一些收集的集合,相当于用户自己归类的一些项目集合。
总结
今天给大家介绍了我前段时间收集项目的一些使用技巧。我也给大家整理了一份我自己的使用笔记的思维导图,大家可以在公众号内回复「github」获取完整的思维导图。
文章首发于微信公众号「蚂蚁原图」,欢迎大家关注。打开微信,使用 “搜一搜”,搜索「蚂蚁原图」,即可关注。
学会这十招,轻松搜索github优质项目的更多相关文章
- 十招谷歌 Google 搜索
十招谷歌搜索 一.或者 OR 二.网址 insite:example.com keyword 三.大约 1.类似查询(记得) ~keyword 2.模糊查询(记得) key*****word 3.模糊 ...
- 学会了 Vim 还有必要用 GitHub Atom 或者 Sublime Text 么?
亦俊 ,90后,Vim 专栏作者 563 人赞同 Vim 知乎专栏:http://zhuanlan.zhihu.com/hack-vim 用过 [ Visual Studio 2015 ] [ Sub ...
- PPT设计宝典!十招教你做出拿得出手的PPT
据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色. 在本文我们将用 10 个超级技巧来解决糟糕的演示 ...
- PPT设计宝典!十招教你做出拿手的PPT
据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色. 在本文我们将用 10 个超级技巧来解决糟糕的演 ...
- Other | 十招教你找到海量PPT模板
转载自:https://www.douban.com/note/330962457/ 问:PPT模板是什么含义? 答: 先假定你们要的是这种网上到处泛滥成灾的主题PPT吧,下面请耐心看到最后,秋叶老师 ...
- 十分钟轻松让你认识ASP.NET MVC6
这篇文章说明下如何在普通编辑器下面开发mvc6应用程序. 上篇文章: 十分钟轻松让你认识ASP.NET 5(MVC6) 首先安装mvc6的nuget包: 可以看到在project.json文件中添加了 ...
- IE-“无法浏览网页” 教你十招解决疑难杂症
“无法浏览网页” 教你十招解决疑难杂症 相信大家也有遇到过像IE不能上网浏览的问题.下面就来给大家介绍一下常见原因和解决方法: 一.网络设置的问题 这种原因比较多出现在需要手动指定IP.网关.DNS服 ...
- 保姆级教程,如何发现 GitHub 上的优质项目?
先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. ...
- Github优质库分享-01算法小抄 基于LeetCode
Github 优质库分享-01 算法小抄 该库总共 60 多篇原创文章,都是基于 LeetCode 的题目,涵盖了所有题型和技巧,而且一定要做到举一反三,通俗易懂,绝不是简单的代码堆砌. 目前 sta ...
随机推荐
- C#《大话设计模式》之原型模式学习日记
class Program { static void Main(string[] args) { Resume a = new Resume("大鸟"); a.SetPerson ...
- 看完互联网大佬的「LeetCode 刷题手册」, 手撕了 400 道 Leetcode 算法题
大家好,我是 程序员小熊 ,来自 大厂 的程序猿.相信绝大部分程序猿都有一个进大厂的梦想,但相较于以前,目前大厂的面试,只要是研发相关岗位,算法题基本少不了,所以现在很多人都会去刷 Leetcode ...
- Terraform插件Provider管理,搜索、定义、下载
我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 简介 最近工作中用到了Terraform,权当学习记录一下,希望能帮助到其它人. Terraform系列文章如下: Ter ...
- 29、vi和vim用法详解
vi类似于windows中的文本文件,用于普通的文本文件 vim:专家版的文件编辑器,用于shell程序型文件,带颜色,自检查语法 一般模式快捷键 O:光标到一行的首 $:光标到一行的尾 H:光标到整 ...
- 19、oracle的启动和关闭过程
19.1.oracle数据库实例的启动分三步: 1.启动oracle例程: startup nomount; #读初始化参数文件,启动实例,但不安装数据库.当数据库以这个模式启动时,参数文件被读取, ...
- form 向java控制类 提交多表数据 、提交list数组数据
案例:form中有三个表的数据,一个主表,两个子表 1.在主表model类添加 对应子表数据集 2.界面上主表定义 3.控制类接收,直接用主表对象接收即可
- Gerrit GitLab GitHub的几点不同
代码评审的方式不一样 GitHub是基于Pull Request 进行代码评审; GitLab是基于Merge Request 进行代码评审; Gerrit是基于Change Request 进行代码 ...
- buu crypto 凯撒?替换?呵呵!
一. 以为是简单的凯撒加密,但是分析Ascill表,发现毫无规律,意味着要爆破出所有可能.只能用在线工具来弄了,脚本是不可能写的(狗头) 找到了,但是提交不成功,需要变成小写,用脚本转换一下,同时很坑 ...
- C++11运算符重载详解与向量类重载实例(<<,>>,+,-,*等)
1. C++运算符重载介绍 C ++ 中预定义的运算符的操作对象只能是基本数据类型.但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作.这时就必须在C ++ 中重新定义这些运算符,赋予已 ...
- Java | 方法的定义 & 重载 & 递归
方法 方法就是一段用来完成特定功能的代码片段. 方法用于定义该类或该类的实例的行为特征和功能实现.方法是类和对象行为特征的抽象.在面向对象中,整个程序的基本单位是类,方法是从属于类和对象的. 方法 ...