GitHub 作为目前广大程序猿最大的游乐场,在今年 6 月被 微软 以 75 亿美元价值的微软股票收购,GitHub 再次成为业界讨论的焦点。GitHub 以自由开放的定位吸引了相当多的个人开发者和企业,不断发布和更新相当好用的软件和工具。之前少数派曾经为大家整理和推荐了 GitHub 上免费好用的 Windows、macOS 平台的软件:

对于使用者,我不禁好奇:面对如此海量的 GitHub 项目,究竟怎样才能这个平台发现一些优秀的软件和工具。秉着这样的疑问,我收集和总结了下面这几个搜索技巧。

搜热门:GitHub Trend 和 GitHub Topic

GitHub Trend 页面总结了每天/每周/每月周期的热门 Repositories 和 Developers,你可以看到在某个周期处于热门状态的开发项目和开发者。而 GitHub Topic 展示了最新和最流行的讨论主题,在这里你不仅能够看到开发项目,还能看到更多非开发技术的讨论主题,比如 Job、Chrome 浏览器等。

GitHub TrendGitHub Topic

搜开发者

坊间传闻人事招聘开发类员工时,招聘对象在 GitHub 贡献会是重要的参考指标之一。GitHub 作为优秀国产开源软件的集散地之一,埋藏了不少出色的开发者,所以在寻找国产软件的时候,可以尝试先找国内开发者。利用 GitHub 强大的搜索功能,增加几个搜索参数即可轻松找到「目标人物」。

(注:GitHub 官方还支持很多搜索条件,在 这里 可以查看官方出品的搜索技巧。)

Github 搜索技巧 - 找开发者

比如需要寻找国产软件,首先想到的应该是在 GituHub 上找国内开发者,搜索时设置 location 为 China,如果你要寻找使用 javascript 语言开发者,则再增加 language 为 javascript,整个搜索条件就是:language:javascript location:china,从搜索结果来看,我们找到了近 17000 名地区信息填写为 china 的 javascript 开发者,朋友们熟悉的阮一峰老师排在前列。根据官方指引,搜索 GitHub 用户时还支持使用 followersin:fullname 组合条件进行搜索。

使用组合条件进行搜索搜索条件<language:javascript location:china>

搜项目

我们需要在 GitHub 上找到优秀的项目和工具,同样,通过关键字或者设置搜索条件帮助你事半功倍找到好资源。我的使用习惯是先用某些关键词搜索,得到的搜索结果优先展示一些现成的软件和工具。

GitHub 搜索技巧 - 找项目

Awesome + 关键字

Awesome 似乎已经成为不少 GitHub 项目喜爱的命名之一,比如前面提及要找到优秀的 Windows 软件,可以尝试搜索 Awesome windows,得到这样的搜索结果:

Awesome windows 搜索结果

排名前列的结果出现了 Windows/Awesome 项目,这里集合了 Windows 上优质和精选的最佳应用程序及工具列表。在这里,我收集了这些 Awesome 主题的优秀项目:The awesome manifestoAwesome iOS frameworksAwesome wesome Android libraries and resources

设置搜索条件

如果你明确需要寻找某类特定的项目,比如用某种语言开发、Stars 数量需要达到标准的项目,在搜索框中直接输入搜索条件即可。其中用于发现项目,我的用法是灵活运用下面几个搜索条件:stars:language:forks:,其实就是设置项目收藏、开发语言、派生的搜索条件,比如输入 stars:>=500 language:javascript得到的结果 就是收藏大于和等于 500 的 javascript 项目,排名前列是开源代码库和课程项目 freeCodeCamp、大热门的 Vue 和 React 项目。

搜索条件<stars:>=500 language:javascript>

如果觉得记住这些搜索条件略显繁琐的话,使用 GitHub 提供的 高级搜索功能,同样可用自定义条件进行搜索。或者参考官方给出的帮助指南 Searching on GitHub ,里面有更多关于项目、代码、评论、问题等搜索技巧。

GitHub 高级搜索功能

下面是 GitHub 上影响力颇大的项目,仅列举部分:

结语

GitHub 网站拥有很多优秀的开源项目,用好 GitHub 的搜索功能,我们既可以使用官方提供的高级搜索和 Topic、Trend 专题页面,也可以学习组合使用搜索条件的方法,主动发现更多好用的项目和工具。

掌握 3 个搜索技巧,在 GitHub 上快速找到实用软件资源的更多相关文章

  1. github 上有趣又实用的前端项目(持续更新,欢迎补充)

    github 上有趣又实用的前端项目(持续更新,欢迎补充) 1. reveal.js: 幻灯片展示框架 一个专门用来做 HTML 幻灯片的框架,支持 HTML 和 Markdown 语法. githu ...

  2. 工作中经常用到github上优秀、实用、轻量级、无依赖的插件和库

    原文收录在我的 GitHub博客 (https://github.com/jawil/blog) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 按照格式推荐 ...

  3. 工作中经常用到 github 上优秀、实用、轻量级、无依赖的插件和库

    原文收录在 GitHub博客 ( https://github.com/jawil/blog ) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 由于gith ...

  4. 分享下找到的Github上大神的EmpireofCode进攻策略:反正我是用了没反应,改了代码后单位不进攻,蠢站在那里,我自己的策略调调能打败不少人,这个日后慢慢研究吧,Github上暂时找到的唯一策略

    from queue import PriorityQueue from enum import Enum from battle import commander from battle impor ...

  5. GitHub上的一些使用技巧

    1.搜索 转:掌握 3 个搜索技巧,在 GitHub 上快速找到实用软件资源 例如 查找位于深圳的C#开发者 2.查看文件历史提交记录 定位至需要查看的文件 修改地址栏github.com 为 git ...

  6. github上传项目(使用git)、删除项目、添加协作者

    一.注册github账号 github网址https://github.com/ 下一步 然后,你的邮箱会收到一封邮件,进行邮箱验证就行了 二.创建github仓库 登录你的github,在首页的右方 ...

  7. Github 上 36 个最实用的 Vue 开源库

    任何一个开发者,都是十分喜欢使用开源软件包的.因为它使开发工作变得更快速.高效.容易.如果没有开源软件包,开发工作将变得疲惫不堪,不断的重复造轮子! 下面整理了 Github 上 36 个实用的 Vu ...

  8. [git] github上传项目(使用git)、删除项目、添加协作者

    来源:http://www.cnblogs.com/sakurayeah/p/5800424.html (怕链接失败,所以直接就就复制过来啦,感谢作者) 一.注册github账号 github网址ht ...

  9. Github搜索技巧-如何使用github找到自己感兴趣的项目

    Github现在不仅仅作为一个版本控制工具,更是一个开源的仓库,里面不但有优秀的开源代码,电子书,还有一些五花八门的项目,有些国家的法律也放在上面,作为程序员如何找到自己感兴趣的项目就非常重要了! 欢 ...

随机推荐

  1. 【hash表】收集雪花

    [哈希和哈希表]收集雪花 题目描述 不同的雪花往往有不同的形状.在北方的同学想将雪花收集起来,作为礼物送给在南方的同学们.一共有n个时刻,给出每个时刻下落雪花的形状,用不同的整数表示不同的形状.在收集 ...

  2. Angular CDK Overlay 弹出覆盖物

    为什么使用Overlay? Overlay中文翻译过来意思是覆盖物,它是Material Design components for Angular中针对弹出动态内容这一场景的封装,功能强大.使用方便 ...

  3. 微信小程序上传图片更新图像

    解决思路: 1. 调用wx.chooseImage 选择图片 2.wx.uploadFile 上传图片 3.调用后台接口进行修改操作 修改原来的头像 wx.chooseImage({ success: ...

  4. # 机器学习算法总结-第六天(Adaboost算法)

    SKlearn中的Adaboost使用 主要调的参数:第一部分是对我们的Adaboost的框架进行调参, 第二部分是对我们选择的弱分类器进行调参. 使用 Adaboost 进行手写数字识别 导入库,载 ...

  5. TVM图优化(以Op Fusion为例)

    首先给出一个TVM 相关的介绍,这个是Tianqi Chen演讲在OSDI18上用的PPThttps://files.cnblogs.com/files/jourluohua/Tianqi-Chen- ...

  6. swagger 的使用

    最近在用 .Net Core 做项目 了解到swagger 是一个不错的工具 简单介绍一下 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧 ...

  7. Spring Boot启动流程分析

    引言 早在15年的时候就开始用spring boot进行开发了,然而一直就只是用用,并没有深入去了解spring boot是以什么原理怎样工作的,说来也惭愧.今天让我们从spring boot启动开始 ...

  8. ulimit 命令详解 socket查看linux最大文件打开数

    ulimit 命令详解     Linux对于每个用户,系统限制其最大进程数.为提高性能,可以根据设备资源情况,设置各linux 用户的最大进程数 可以用ulimit -a 来显示当前的各种用户进程限 ...

  9. IntelliJ IDEA安装及破解

    百度搜索IntelliJ IDEA,进入官网. 下载完成后进入安装界面 根据自己的情况选择安装路径 等待下载和安装完成. 安装完成 接下来我们运行IntelliJ IDEA 之后这里就要我们进行激活了 ...

  10. Kubernetes的yaml文件中command的使用

    前面说了init容器initContainers,这主要是为应用容器做前期准备工作的,一般都会用到shell脚本,这就会用到command,这里写写command的用法. command就是将命令在创 ...