您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    你真的会高效的在GitHub搜索开源项目吗?
    时间:2019-01-22 21:09 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    GitHub的盛行, GitHub在开源世界的受欢迎水平自不必多言。再加上明天,GitHub官方又搞了个大旧事:私有仓库也改为无偿运用,这在原来可是需求真金白银的买的。可见微软收买后,依然没有改动 GitHub 的定位,甚至还更进一步。

     

    花开两朵,各表一枝。我们明天想要聊的并不是 GitHub 多么重要,而是要说一下 GitHub 的搜索功用。

     

    你在 GitHub上搜索代码时,是怎样样操作的呢?是不是也是像我这样,直接在搜索框里输入要检索的内容,然后不断在列表里翻页找本人需求的内容?

     

     

    或许是复杂挑选下,在左侧加个言语的过滤项。

     

     

    再或许改动一下列表的排序方式

     

     

    这就是「全部」了吗?

     

    普通的系统检索功用,都会有一个「初级搜索」的功用。需求在另外的界面里展开,停止二次搜索之类的。 GitHub 有没有相似的呢?

     

    答案是「一定的」。做为一个为万千工程师提供效劳的网站,不只要有,而且还要技术范儿。

     

    假设我们本人开发一个相似的运用,会怎样完成呢?

     

    带着思绪,我们一同来看看,GitHub 是怎样做的。

     

    这里我们假定正要学习 Spring Cloud,要找一个 Spring Cloud 的 Demo 参考练手。

     

    1. 明白搜索仓库标题、仓库描画、README

    GitHub 提供了便捷的搜索方式,可以限定只搜索仓库的标题、或许描画、README等。

     

    以Spring Cloud 为例,普通一个仓库,大约是这样的

     

     

    其中,白色箭头指的两个中央,辨别是仓库的称号和描画。我们可以直接限定关键字只查特定的中央。比如我们只想查找仓库称号包含 spring cloud 的仓库,可以运用语法

     

    in:name 关键词

     

     

    假设想查找描画的内容,可以运用这样的方式:

     

    in:descripton 关键词

     

     

    这里就是搜索下面项目描画的内容。

     

    普通项目,都会有个README文件,假设要查该文件包含特定关键词的话,我想你猜到了

     

    in:readme 关键词

     

    2. 明白搜索 star、fork 数大于多少的

    一个项目 star 数的多少,普通代表该项目有受欢迎水平。虽然如今也有渣滓项目刷 star ,但毕竟是少数, star 依然是个不错的权衡标准。

     

    stars: > 数字 关键字。

     

    比如我们要找 star 数大于 3000 的Spring Cloud 仓库,就可以这样

     

    stars:>3000 spring cloud

     

     

    假设不加 >= 的话,是要准确找 star 数等于详细数字的,这个普通有点困难。

     

    假设要找在指定数字区间的话,运用

     

    stars: 10..20 关键词

     

    fork 数同理,将下面的 stars 换成 fork,其它语法相反

     

     

    3. 明白搜索仓库大小的

    比如你只想看个复杂的 Demo,不想找特别复杂的且占用磁盘空间较多的,可以在搜索的时分直接限定仓库的 size 。

     

    运用方式:

     

    size:>=5000 关键词

     

    这里留意下,这个数字代表K, 5000代表着5M。

     

    4. 明白仓库能否还在更新维护

    我们在确认能否要运用一些开源产品,框架的时分,能否继续维护是很重要的一点。假设曾经过时没人维护的东西,踩了坑就不好办了。而在 GitHub 上找项目的时分,不再需求每个都点到项目里看看最近 push 的时间,直接在搜索框即可完成。

     

    元旦刚过,比如我们要找临近年底依然在勤快更新的项目,就可以直接指定更新时间在哪个时间前或后的

     

    经过这样一条搜索 pushed:>2019-01-03 spring cloud

     

    我们就找到了1月3号之后,还在更新的项目。

     

     

    你是想找指定时间之前或之后创立的仓库也是可以的,把 pushed 改成 created 就行。

     

    5. 明白搜索仓库的 LICENSE

    我们常常运用开源软件,一定都知道,开源软件也是分不同的「门派」不同的LICENSE。开源不等于一切收费,不同的容许证要求也大不相反。 2018年就出现了 Facebook 修正 React 的容许协议招致各个公司纷繁修正本人的代码,寻觅交流的框架。

     

    例如我们要找协议是最为宽松的 Apache License 2 的代码,可以这样

     

    license:apache-2.0 spring cloud

     

     

    其它协议就把apache-2.0交流一下即可,比如换成 mit 之类的。

     

    6. 明白搜索仓库的言语

    比如我们就找 Java 的库, 除了像下面在左侧点击选择之外,还可以在搜索中过滤。像这样:

     

    language:java 关键词

     

    7.明白搜索某团体或组织的仓库

    比如我们想在 GitHub 上找一下某个大神是不是提交了新的功用,就可以指定其称号后搜索,例如我们看下 Josh Long 有没有提交新的 Spring Cloud 的代码,可以这样运用

     

    user:joshlong

     

     

    组合运用一下,把 Java 项目过滤出来,多个查询之间「空格」分隔即可。

     

    user:joshlong language:java

     

     

    找某个组织的代码话,可以这样:

     

    org:spring-cloud 就可以列出详细org 的仓库。

     

    【编辑引荐】

    面向开发者的18个机器学习平台

    本月 Firefox 65 将参加 Flexbox Inspector 开发者工具

    Facebook 在 Github 上发布 Spectrum,照片上传更高效

    从项目的 GitHub 星星数看2018年 JavaScript 生态圈

    微软沈向洋谈GitHub、数据信仰和计算未来

    (责任编辑:admin)