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. 【AC自动机】最短母串

    [题目链接] https://loj.ac/problem/10061 [题意] 给定 n 个字符串 S1-Sn,要求找到一个最短的字符串 T,使得这 n 个字符串都是 T 的子串. [题解] 类似于 ...

  2. 这里除了安全,什么都不会发生!Docker镜像P2P加速之路

    1.1      问题: 在使用Docker运行容器化应用时,宿主机通常先要从Registry服务(如Docker Hub)下载相应的镜像(image).这种镜像机制在开发环境中使用还是很有效的,团队 ...

  3. HTTP协议探究(一):缓存

    一 复习与目标 1 复习 序章主要用WrieShark抓包HTTP报文 复习了TCP协议 讲述了TCP协议与HTTP之间的关系 HTTP1.1更新原因:HTTP1.0一次TCP连接只能发送一次HTTP ...

  4. Cache的一些总结

    输出缓存 这是最简单的缓存类型,它保存发送到客户端的页面副本,当下一个客户端发送相同的页面请求时,此页面不会重新生成(在缓存有限期内),而是从缓存中获取该页面:当然由于缓存过期或被回收,这时页面会重新 ...

  5. python selenium2 模拟点击+拖动 测试对象 58同城验证码

    #!/usr/bin/python # -*- coding: UTF-8 -*- # @Time : 2019/12/5 17:30 # @Author : shenghao/10347899@qq ...

  6. gzip: stdin: not in gzip format 解决办法

    # sudo tar zxvf ./jdk-7ull-linux-i586.tar.gz -C /usr/lib/jvm gzip: stdin: not in gzip format tar: Ch ...

  7. oracle中查询表中的触发器,关闭启用操作

    1.查询指定表中有哪些触发器 select * from all_triggers WHERE table_name='表名' 2.禁用指定表中所有的触发器 alter table table_nam ...

  8. wepy 开发小程序, 为什么设置pages路径的时候总是找不到 js 文件?

    1,路径先检查仔细了 2,别说话,重新run 3,可能是版本问题,重新搭工程

  9. LEANGOO成员

    转自:https://www.leangoo.com/leangoo_guide/leangoo_guide_member.html 1. 看板成员及权限 一个看板上的最大成员限制为200个. 看板的 ...

  10. 3.IOC的配置与应用(annotation的方式)

    自动装载 @Autowired public class UserService { private UserDAO userDAO; public UserDAO getUserDAO() { re ...