如何玩转github

如何玩转github

很多的小伙伴,经常会有这样的困惑,我看了很多技术的学习文档、书籍、甚至视频,我想动手实践,于是我打开了GitHub,想找个开源项目,进行学习,获取项目实战经验。这个时候很多小伙伴就会面临这样的问题:“我不会搜啊,我该怎么找呀?”,最终只能放弃。

相信看完这篇文章,你就可以学会如何精准地在GitHub搜索项目。

开源项目的组成部分

在讲清楚之前呢,我们先来了解一下一个开源项目有哪些组成部分:

  • name: 项目名
  • description: 项目的简要描述
  • 项目的源码
  • README.md: 项目的详细情况的介绍
  • 那么除了这些要素之外,项目本身的star数和fork数,也是评判一个开源项目是否火热的标准,这同时也是一个很重要的搜索标准。另外我们也要注意观察这个项目的最近更新日期,因为项目越活跃,那么它的更新日期也更加频繁。

以上要素就是我们在进行搜索的时候要注意的一些关键点。

如何搜索

那我们到底如何搜索呢?

假设我们现在要搜索React,相信大部分小伙伴都是直接在【搜索框】里输入:“React”,然后一回车,你就会发现情况像下面这样:

搜索结果会显示非常多的开源项目,简直让你应接不暇,无从下手,很多小伙伴搜到这一步就放弃了,因为项目太多了,根本找不到如何找到自己感兴趣的开源项目,所以这样搜索非常的不准确。所以我们来学习一下稍微精确一点的搜索方法。

按照 name 搜索

搜索项目名里面包含React的项目:

in:name React

b
得到如下结果:

可以看到,这些搜索结果都是项目名里面带有“React”关键字的项目,但是项目数量依旧很多。

现在我们来约束一下

比如我再精确到项目的star数大于5000+:

in:name React stars:>5000
结果是这样的:

搜索结果瞬间精确了很多,现在只有114个项目可供选择。当然我们一般不会把star数设置得这么高,一般设置个1000就差不多了。

同理,我们也可以按照fork的数量来进行搜索:

in:name React stars:>5000 forks:>3000

你会发现,结果越来越精确!

按照README来搜索

搜索![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=file%3A%2F%2F%2FC%3A%5CUsers%5CAdministrator%5CAppData%5CRoaming%5CTencent%5CQQTempSys%5C%25W%40GJ%24ACOF(TYDYECOKVDYB.png&pos_id=img-va5RXMaJ-1715742762547)README.md里面包含React的项目:

in:readme React

结果有这么多,那么我们再限制一下它的star数和fork数:

in:readme React stars:>3000 forks:>3000

搜索结果一下子精确到了90个。这个时候你再去选择项目,就会变得容易很多。

按照descriptin搜索

假设我们现在要学习微服务的项目,我们搜索项目描述(description)里面包含微服务的项目:

in:description 微服务

结果有这么多,那我们接着增加一些筛选条件:

in:description 微服务 language:python
language:python的意思是我们把语言限制为python,我们来看看结果如何:

搜索结果精确了很多。

假如在这些项目里面,我们想要找到最近才更新的项目,意思是更新时间就在最近,我们可以这样:

in:description 微服务 language:python pushed:>2020-01-01
pushed:>2020-01-01的意思是我们把项目的最后更新时间限制到2020-01-01,我们来看看结果如何:

搜索结果只有8个了,这几个项目就属于更新比较活跃的项目,这下再也不纠结了。

###总结

好,我们来总结一下。我们想要进行精准搜索,无非就是增加筛选条件。

  • in:name xxx // 按照项目名搜索

  • in:readme xxx // 按照README搜索

  • in:description xxx // 按照description搜索

  • 那么在这里面呢,我们又可以增加筛- 选条件

  • stars:>xxx // stars数大于xxx

  • forks:>3000 // forks数大于xxx

  • language:xxx // 编程语言是xxx

  • pushed:>YYYY-MM-DD // 最后更新时间大于YYYY-MM-DD
    以上就是我们在GitHub上面精准搜索项目的一些小技巧,希望对你有所帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/838043.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FDA认证的相关流程以及基本要求

一、FDA认证是什么? FDA认证,全称为"美国食品药品监督管理局认证"(U.S. Food and Drug Administration),是美国政府机构负责确保食品、药品、医疗器械和化妆品等产品的质量、安全和有效性。FDA认证是基于美…

在做题中学习(58):和为K的子数组

560. 和为 K 的子数组 - 力扣(LeetCode) 因为是判断子数组的和 要返回 k 的次数,所以 解法:前缀和 哈希表 提出一个概念:以下标i为结尾的所有子数组 那要找出所有和 k的子数组 就相当于:找出所有值为…

SD8002 集成电路芯片IC高电源输出功率1W功率音频放大器

对于SD8002A的表面级封装,日JA140℃/W,TJMAX150℃。依赖于系统工作的环境温度TA,(2)可 用于计算由芯片封装所能承受的内部最大功耗。如果式(1)的结果比式(2)大,此时就需要降低电 源电压或者提高负载阻值。在5V电源和8Ω负载的典型…

JAVA实验项目(二): 抽象类、接口的定义与使用

实验项目二 抽象类、接口的定义与使用 Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊&…

C#实现多线程的几种方式

前言 多线程是C#中一个重要的概念,多线程指的是在同一进程中同时运行多个线程的机制。多线程适用于需要提高系统并发性、吞吐量和响应速度的场景,可以充分利用多核处理器和系统资源,提高应用程序的性能和效率。 多线程常用场景 CPU 密集型任务…

Andrew Ng 吴恩达的深度学习课程作业 TensorFlow Tutorial (TF2兼容)

使用TensorFlow 2.6.0版本改写TensorFlow 1的代码,使用TF2兼容TF1的API。 1 - Exploring the Tensorflow Library 1.1 导入相关库 import math import h5py import matplotlib.pyplot as plt import numpy as np import tensorflow as tf from tensorflow.python…

物联网促进信息化——​青创智通工业物联网解决方案​

随着传感器网络(WSN)、无线射频识别(RFID)以及微电子机械系统(MEIVIS)等技术的不断成熟,扩展了人们对信息获取和使用的能力,并将提高制造效率、改善产品质量、降低产品成本和资源消耗、为用户提供更加透明和个性化的服…

玩转Matlab-Simscape(初级)- 05 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真(理论部分1)

** 玩转Matlab-Simscape(初级)- 05 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真(理论部分1) ** 目录 玩转Matlab-Simscape(初级)- 05 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真&am…

AutoX.js入门教程

要使用AutoX.js创建一个自动化脚本,自动打开网易云音乐,搜索张学友的歌曲,并随机循环播放,然后将该脚本打包成APK文件,以下是实现这一过程的大致步骤: ### 步骤1:编写AutoX.js脚本 首先&#…

网关过滤器实现接口签名检验

背景 往往项目中的开放接口可能被别有用心者对其进行抓包然后对请求参数进行篡改,或者重复请求占用系统资源为此我们行业内使用比较多的策略是接口签名校验。签名校验的实现可以用注解aop的形式实现,也可以使用过滤器统一拦截校验实现,此篇文…

图形化编程桌面 跨部门协作的新工具

中午,阳光洒满大地,微风轻拂,给人带来温暖和活力。卧龙和凤雏在享用过午餐后,决定到公司附近的湖边散步,享受这难得的宁静时光。 卧龙望着湖面泛起的波光,顺手折下一根嫩绿的柳枝,在手中不停地摆…

运维别卷系列 - 云原生监控平台 之 04.prometheus 查询语句 promql 实践

文章目录 [toc]PromQL 简介什么是时间序列 PromQL 数据类型即时向量 Instant vector范围向量 Range vectorTime DurationsOffset modifier modifier 浮点值 Scalar字符串 String PromQL FUNCTIONSfloor()irate()rate()round()sort()sort_desc() PromQL 运算符算术运算符比较运算…

TortoiseGit的安装

TortoiseSvn和TortoiseGit都是针对代码进行版本管理的工具,又俗称小乌龟,简洁而可视化的操作界面,免去繁琐的命令行输入。只需要记住常用的几个操作步骤就能快速上手。 TortoiseGit安装 1、TortoiseGit作为git的版本管理工具 ,但…

【PMP各章节易错的知识点记录】

PMP各章节易错的知识点记录 文章目录 PMP各章节易错的知识点记录前言第1-3章第4章 整合第5章 范围第6章 进度第7章 成本第8章 质量第9章 资源第10章 沟通第11章 风险第12章 采购第13章 相关方 前言 PMP各章节易错的知识点记录 第1-3章 一、商业论证、效益管理计划、成本效益分…

无感自动透明加密系统

无感透明加密系统是一种高级的数据安全技术,它在不影响用户正常操作的前提下,对指定的文件或数据进行自动加密和解密。这种系统设计的目的是为了提高信息安全级别,确保敏感信息在存储和传输过程中的保密性,同时又不会给合法用户的…

5.9网络协议

由网卡发送数据通过网线进行发送,当网卡接收到信号以后将数据传给内核数据区,然后由操作系统交给相应的进程。 将数据进行发送的时候需要借助于网线实现,这个时候会出现当传输的数据比较远的时候就借助于中继器将信号进行再生扩大&#xff0…

FedDML:Federated Mutual Learning

这篇把DML运用到FL上 论文地址:arvix code: 作者git 贡献 我们针对三种异质性(DOM)提出了一种新颖的联邦学习范式,称为联邦相互学习(FML)。 首先,FML 处理数据和目标通过使每个客户能够训练个性化模型来实现异质性。 从OH的意义上来说,DH对服务器有害,但对客户端有…

STL—string类(1)

一、string类 1、为什么要学习string? C语言中,字符串是以\0结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP(面向对象…

怎么选靠谱的短信验证码API平台?

随着移动互联网的发展,越来越多人会选择通过短信验证码API来验证信息,现在平台那么多,像聚合数据、数据宝等都有这个API接口,商家在选择短信验证码API平台时应该注意些什么呢? 什么是短信验证码API? 短信…

爱校对新功能上线:领导人讲话和职务排序校对

我们很高兴地宣布,爱校对网站正式推出两项新功能:领导人讲话校对和领导人职务排序校对。这些新功能旨在帮助用户更准确地引用和整理领导人讲话内容,以及正确排列领导人的职务顺序。 领导人讲话校对 在撰写报告或文章时,引用领导…