0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Github高效率的查找项目

马哥Linux运维 来源:CSDN技术社区 2023-09-24 14:43 次阅读

GitHub各位应该都很熟悉了,全球最大的开源社区,也是全球最大的同性交友网站~~,但是大部分同学使用GitHub应该就是通过别人的开源链接,点进去下载对应的项目,而真正使用Github来查找开源项目的还是少数。

面试总得有几个和所求岗位相关的项目,如果应届生、转行的童鞋没有项目,就靠简单的javaSE或者其他语言基础那只能说“你太难了”。

通过 Github ,你可以很方便的下载自己需要的项目,了解实时热点的项目,通过对优秀的开源项目的学习,更好的进行学习与提高

那么如何使用Github高效率的查找项目呢?这篇文章带你了解一下

仓库分几种?

本地仓库:建立在本地的文件夹。

远程仓库:建立在互联网的服务器内的文件夹。

分布式版本控制系统

配有两个仓库,在你的电脑上有一个 本地仓库 ,在远程的服务器上有一个 远程仓库 。

我们在提交文件的时候会先提交到本地仓库,然后在有网络的情况下,再从本地仓库提交到网络上的远程仓库。

Git 就是一个典型的分布式版本控制系统

Github就担任了上述的远程仓库这一角色,就是一个存放在外网服务器上的一个文件夹。并且Github是免费的开源的托管平台

什么是Git

Git (读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。

Github常用词含义

watch:会持续收到项目的动态

fork:复制某个项目到自己的仓库

star:点赞数,表示对该项目表示认可,点赞数越多的项目一般越火

clone:将项目下载到本地

follow:关注你感兴趣的作者,会收到他们的动态

一个完整的项目界面

9424a218-5952-11ee-939d-92fbcf53809c.png

① 此处是项目作者名/项目名

② 此处是项目的点赞数,和fock数,越火的项目点赞和fock就会越多

③ 项目的Description 和Website 和tags 也就是项目的说明和标签, 通过此处你可以一眼了解该项目的功能和简介

④ 项目的commits提交数 ,一般比较好的项目,维护会比较频繁,更新也会频繁,提交数就会多

⑤项目提交时间, 通过这里你可以看到项目的提交时间,防止自己下载了一些远古项目

⑥README.md README.md文件是一个项目的入门手册,里面介绍了整个项目的使用、功能等等。所以README文件写得好不好,关系到这个项目能不能更容易的被其他人了解和使用。

使用Github搜索项目

一般人用Github的步骤 直接搜索,选择一下Languages 设置下项目排序顺序 就直接下载

然后就是克隆仓库,阅读md,看项目源代码,看不懂,关闭项目,删除。

94460098-5952-11ee-939d-92fbcf53809c.png

这样是很难找到真正适合自己的项目的,

GitHub里面有很多有价值的开源项目和代码,如何在海量的代码库中搜索我们需要的信息,那么接下来将带你了解下如何利用GitHub强大的搜索功能,来找到适合自己的项目

GitHub的高级搜索

GitHub有高级搜索功能,search/advanced可以输入关键字、代码库大小、包含作者、代码语、代码包含后缀文件名等。

946fd85a-5952-11ee-939d-92fbcf53809c.png

9489b0cc-5952-11ee-939d-92fbcf53809c.png

这里我们假设正要学习 Spring Boot,要找一个 Spring Boot的 Demo 来进行参考学习。

精准搜索仓库标题、仓库描述、README

in关键词限制搜索范围

按照项目名/仓库名搜索(大小写不敏感)

(1)公式

in:name xxx项目名包含xxx

in:description xxx项目描述包含xxx

in:readme xxx项目介绍文档里含有xxx

比如我搜索项目名里含有 Spring Boot 的in:name Spring Boot

会发现项目数量由17W变成了11W

94a03608-5952-11ee-939d-92fbcf53809c.png

搜索项目描述里含有 Spring Boot 的in:description Spring Boot

94bddd84-5952-11ee-939d-92fbcf53809c.png

stars或fork数量去查找

一个项目 star 数的多少,一般代表该项目的受欢迎程度 越受欢迎的项目,star数和fork数一定也不会少

(1)公式

stars:>xxx stars数大于xxx

stars:xx..xx stars数在xx…xx之间

forks:>xxx forks数大于xxx

forks:xx..xx forks数在xx…xx之间

查找star数大于等于5000的springboot项目
springbootstars:>=5000
查找fork数大于500的springcloud项目
springcloudforks:>500
查找fork在100到200之间并且stars数在80到100之间的springboot项目
springbootforks:100..200stars:80..100

我们进一步缩小范围,Star数量过滤,要求Star数量大于3000

in:namespringbootstarts:>3000

可以看到只有一千多个项目供我们选择了

94d2809a-5952-11ee-939d-92fbcf53809c.png

按照地区和语言进行搜索

很多时候我们的项目是要用我们会的语言,你找到了一个Python写的好项目,但是没学过Python,下载了也看不懂,同时,为了更好的阅读README.md帮助文档以及项目注释,我想很多同学都会想要下载中文的项目,当然英语顶呱呱的请忽略

(1)公式

location:地区

language:语言

语言为javaScript
language:javaScript
地区为china
location:China

如果你要寻找使用 javascript 语言的国产项目,整个搜索条件就是:language:javascript location:china,从搜索结果来看,我们找到了五百多万javascript 项目,近 21000 多名地区信息填写为 China 的 javascript 开发者

94ede4d4-5952-11ee-939d-92fbcf53809c.png

根据仓库大小搜索

如果你只是想找一些小型的项目进行个人学习和开发,不想找特别复杂的,那么使用size关键字查找简单的 Demo,就成了你的首选

(1)公式

size:>= 数字

注意:100代表100Kb 单位为Kb

根据仓库是否在更新的搜索

寻找项目当然是想要找到最新的项目,而不是好久都没有更新的老项目了,

(1)公式

pushed:> YYYY-MM-DD最后上传日期大于YYYY-MM-DD

created:> YYYY-MM-DD创建日期大于YYYY-MM-DD

比如我们想要寻找2020年最新更新的项目,可以用pushed:>2020-01-03 Spring Boot,这样子就可以找到今年一月份之后更新的最新项目

95086458-5952-11ee-939d-92fbcf53809c.png

根据某个人或组织进行搜索

如果你想在GitHub 上找一下某个大神是不是提交了新的项目,可以对他们进行精准搜索

(1)公式

user: name查找某个用户

org: name查找某个组织

followers:>=xxx查找关注者数量超过xxx的开发者

比方说我们想要找一下廖雪峰老师的python开源项目

user:MichaelLiaolanguage:python

953a1372-5952-11ee-939d-92fbcf53809c.png

根据仓库的LICENSE搜索

License是很多人容易忽略的一个问题

开源项目的License(项目授权协议) 有的开源项目作者明确禁止商用了,但是你不知情下载了,并且使用了,这就会很麻烦,“非常友好”的协议,比较出名的有这几种:BSD、MPL(Mozilla)、Apache、MIT。这些协议不但允许项目的使用者使用开源库,有些还允许对开源库进行修改并重新分发。因此用起来特别爽。上述这几个协议在细节上有些小差异,大伙儿可以去它们官网瞧一下。

以下这个网站,详细介绍了各个License的区别。

http://choosealicense.com/licenses/

(1)公式

-license:对应协议

例如咱们要找协议是最为宽松的 Apache License 2 的代码,

license:apache-2.0SpringBoot

95571aa8-5952-11ee-939d-92fbcf53809c.png

awesome加强搜索

Awesome 似乎已经成为不少 GitHub 项目喜爱的命名之一,Awesome 往往整合了大量的同一领域的资料,让大家可以更好的学习。

(1)公式

awesome 关键字 awesome 系列一般是用来收集学习、工具、书籍类相关的项目

比如搜索优秀的python相关的项目,包括框架、教程

95734160-5952-11ee-939d-92fbcf53809c.png

awesome-python,这个库提供了各个领域常见的python库支持。整体看下来,几乎涵盖了所有的常见的计算机领域,

热门搜索(GitHub Trend 和 GitHub Topic)

GitHub Trend 页面总结了每天/每周/每月周期的热门 Repositories 和 Developers,你可以看到在某个周期处于热门状态的开发项目和开发者

958a0f26-5952-11ee-939d-92fbcf53809c.png

GitHub Topic 展示了最新和最流行的讨论主题,在这里你不仅能够看到开发项目,还能看到更多非开发技术的讨论主题,

95a4ad40-5952-11ee-939d-92fbcf53809c.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    5966

    浏览量

    108725
  • JAVA
    +关注

    关注

    19

    文章

    2904

    浏览量

    102998
  • 开源
    +关注

    关注

    3

    文章

    2990

    浏览量

    41722
  • GitHub
    +关注

    关注

    3

    文章

    457

    浏览量

    15926

原文标题:这才是 玩转Github 的正确姿势

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    高效率通信电源技术

    信息业的迅猛发展,给通信电源市场带来了巨大的市场机会和挑战,同时对电源提出了一些新的需求,其中高效率是一个最为重要的技术挑战。随着运营商设备的了断增多、用电量急剧增加、机房面积紧张等客观因素的存在
    发表于 03-10 11:00

    无线充电怎么提高效率呢,急需

    无线充电怎么提高效率呢,急需
    发表于 10-19 10:43

    高效率开关电源设计与制作

    给出了主要元件的选择和注意事项;第五章为常规高效率开关电源的设计方法和设计实例;第六章为谐振开关电源的设计方法和设计实例;第七章为高效率DC/DC变换器的设计方法和设计实例;第八章论述了采用特殊方法
    发表于 06-12 12:39

    简单的高效率,降压型开关稳压器

    DN73- 简单的高效率,降压型开关稳压器
    发表于 07-29 16:24

    高效率高线性的功放怎么实现?

    射频功率放大器被广泛应用于各种无线通信设备中。在通讯基站中,线性功放占其成本比例约占1/3。高效率,低成本的解决功放的线性化问题显得非常重要。因此高效率高线性的功放一直是功放研究的热门课题。
    发表于 09-17 08:08

    Git和Github效率提高的技巧整理

    用 Git 和 Github高效率的 10 个技巧!
    发表于 11-08 08:46

    PCB加工如何实现高精度和高效率的钻孔呢?

    PCB加工如何实现高精度和高效率的钻孔呢?有哪些方法和步骤呢?
    发表于 04-11 14:50

    高效率电源的设计

    高效率电源的设计:效率是电源设计的关键参数。来自各个方面的压力都迫使新电源的设计者努力提高其效率。本文将讨论对更高的效率的需求,并展示设计一个电源时可采用的针对
    发表于 09-30 10:11 38次下载

    高效率稳压器电路图

    高效率稳压器电路图
    发表于 04-14 10:29 423次阅读
    <b class='flag-5'>高效率</b>稳压器电路图

    高效率弛张振荡器电路图

    高效率弛张振荡器电路图
    发表于 06-29 11:21 1911次阅读
    <b class='flag-5'>高效率</b>弛张振荡器电路图

    高效率LED驱动电源设计

    高效率LED驱动电源设计
    发表于 03-30 17:38 4622次阅读
    <b class='flag-5'>高效率</b>LED驱动电源设计

    编写高效率的testbench

    编写高效率的testbench,学习编写测试文件的小伙伴们。
    发表于 05-11 16:40 16次下载

    浅谈磁性槽楔在高效率电机中的应用

    浅谈磁性槽楔在高效率电机中的应用_郭锦州
    发表于 01-01 15:30 3次下载

    高效率反激变换器设计技巧

    高效率反激变换器设计技巧说明。
    发表于 04-26 09:24 12次下载

    何为高效率电机

    高效率电机出现在上世纪70年代第一次能源危机时,它与一般电动机相比其损耗下降约20%左右。由于能源供应的持续紧张,近年又出现了所谓超高效率电机,其损耗又比高效率电机下降15%~20%。
    的头像 发表于 05-30 11:17 2341次阅读