首页 > 其他分享 >如何用GitHub快速找到优秀的开源项目

如何用GitHub快速找到优秀的开源项目

时间:2023-08-16 17:00:47浏览次数:38  
标签:GitHub 匹配 项目 仓库 优秀 xxx 开源

版本控制Git和GitHub

分布式版本控制系统
  • 配有两个仓库,在你的电脑上有一个 本地仓库 ,在远程的服务器上有一个 远程仓库 。
  • 我们在提交文件的时候会先提交到本地仓库,然后在有网络的情况下,再从本地仓库提交到网络上的远程仓库。
  • Git 就是一个典型的分布式版本控制系统
  • Github就担任了上述的远程仓库这一角色,就是一个存放在外网服务器上的一个文件夹。并且Github是免费的开源的托管平台
什么是Git

Git (读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。

Github常用词含义
  • watch:会持续收到项目的动态
  • fork:复制某个项目到自己的仓库
  • star:点赞数,表示对该项目表示认可,点赞数越多的项目一般越火
  • clone:将项目下载到本地
  • follow:关注你感兴趣的作者,会收到他们的动态

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

GitHub的高级搜索

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

以下搜索条件可以组合使用!

搜索条件 例子 备注
location: location:china 匹配用户填写的地址在china
language: language:javascript 匹配开发语言为javascript的开发者
followers: followers:>=1000 匹配拥有超过1000名关注者的开发者
in:fullname jack in:fullname 匹配用户名实名为jack的开发者
in:name in:name xxx 项目名包含xxx
in:description in:description xxx 项目描述包含xxx
in:readme in:readme xxx 项目介绍文档里含有xxx
Awesome + 关键字 awesome-python 神奇的关键字Awesome,帮助找到优秀的工具列表
stars: stars:>=500 匹配收藏数量超过500的项目
stars:xx..xx stars:10..50 匹配收藏数量在10到50之间的项目
forks: forks:>=500 匹配分支数量超过500的项目
forks:xx..xx forks:10..50 匹配分支数量在10到50之间的项目
size: size:>=500 匹配项目大于等于500kb的项目
pushed: pushed:>YYYY-MM-DD 最后上传日期大于YYYY-MM-DD
created: created:YYYY-MM-DD 创建日期大于YYYY-MM-DD
user: user: name 查找某个用户
org: org: name 查找某个组织
license: license:apache-2.0 Vue 最宽松的协议代码
根据仓库的LICENSE搜索

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

http://choosealicense.com/licenses/
热门搜索(GitHub Trend 和 GitHub Topic)

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

参考网址:https://blog.csdn.net/doxopcsdn/article/details/131222541

标签:GitHub,匹配,项目,仓库,优秀,xxx,开源
From: https://www.cnblogs.com/shababy/p/17635585.html

相关文章

  • 用 GPT-4 给开源项目 GoPool 重构测试代码 - 每天5分钟玩转 GPT 编程系列(8)
    目录1.好险,差点被喷2.重构测试代码2.1引入Ginkgo测试框架2.2尝试改造旧的测试用例2.3重构功能测试代码3.总结1.好险,差点被喷早几天发了一篇文章:《仅三天,我用GPT-4生成了性能全网第一的GolangWorkerPool,轻松打败GitHub万星项目》,这标题是挺容易被怼,哇咔咔;不过最......
  • 浪潮信息开源全球首个自动并行 高容错 低延时自动驾驶计算框架AutoDRRT
    近日,2023年开放计算中国社区技术峰会(OCPChinaDay2023)在北京举行。会上,浪潮信息正式发布自动驾驶计算方案AutoDRRT(AutonomousDrivingDistributedRobustReal-Time)开源计划,为提升自动驾驶系统的自动分布式并行、高容错、低延时能力提供开源、高效的计算框架。AutoDRRT是全球首......
  • 自动同步 github 仓库到 gitee
    自动同步github仓库到gitee先上最终效果代码仓库:github2giteeGithubAction同步结果:为什么要同步到gitee将gitee仓库作为备份镜像仓库,以防不测网上的同步方法大致在网上查找了一通,基本都是使用githubaction做到自动同步,也有一些前人封装好的action,所以做起来......
  • 开源XL-LightHouse与Flink、ClickHouse之类技术相比有什么优势
    Flink是一款非常优秀的流式计算框架,而ClickHouse是一款非常优秀的OLAP类引擎,它们是各自所处领域的佼佼者,这一点是毋庸置疑的。Flink除了各种流式计算场景外也必然可以用于流式统计,ClickHouse同样也可以用于流式统计,但我不认为它们是优秀的流式统计工具。XL-Lighthouse在流式统计这......
  • JVS开源基础框架:平台基本信息介绍
    JVS是面向软件开发团队可以快速实现应用的基础开发脚手架,主要定位于企业信息化通用底座,采用微服务分布式框架,提供丰富的基础功能,集成众多业务引擎,它灵活性强,界面化配置对开发者友好,底层容器化构建,集合持续化构建。产品设计定位JVS是定位为辅助研发团队的快速脚手架,降低项目构建基础......
  • 《安富莱嵌入式周报》第320期:键盘敲击声解码, 军工级boot设计,开源CNC运动控制器,C语言
    周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 视频版:https://www.bilibili.com/video/BV1Cr4y1d7Mp/1、键盘敲击声解码https://arxiv.org/abs/2308.01074键盘敲击声被解码的话,我们使用键盘输入密码将被方便的解码出......
  • 国产开源标杆,九年用心做好一款堡垒机
    安全问题是企业信息化建设过程中非常重要的一环。随着数字经济时代的到来,近年来,企业IT环境发生了巨大的变化。作为保障企业IT运维安全审计的主要工具,堡垒机逐渐进入到大家的视野,越来越多的企业用户开始部署堡垒机,让企业的运维操作变得更加安全、更加高效。传统的硬件堡垒机功......
  • 【开源分享】在线客服系统搭建-基于php和swoole客服系统CRMchat(附源码完整搭建教程)
    CRMChat是一款开源的在线客服系统,后台管理使用thinkphp框架,消息通讯使用swoole扩展,现在我来部署搭建一下。这是一款不可商用的开源客服系统,如果有商用需求可以访问我的网站:gofly.v1kf.com域名解析以阿里云为例,我添加了自己的二级域名crmchat.v1kf.com到服务器IPPHP扩展安装......
  • ❤️ GitHub Copilot 读心术揭秘,Copilot 逆向工程笔记
    总览你是否好奇GitHubCopilot如何知道你想写的内容?有时候它聪明得甚至好像读过你项目里其他文件一样,不要怀疑,它确实读过。这篇文章记录了我阅读一个对Copilot的逆向工程的笔记,一言以蔽之,Copilot使用了Jaccard相似度获取用户最近访问过的页面里与当前编辑内容最相似的代码......
  • 小程序自动发版探索,两个优秀的第三方库该如何选择?且听我娓娓道来【玩转前端】
    前情提要目前的多端项目,在代码发布的时候,对于不同的端,需要进行不同的操作。尤其小程序端,每次都要在开发者工具中进行一次:上传->填写版本信息->提交审核(确定上线时)既然手动这么麻烦,能不能做成自动的?让开发节省重复操作时间,同时避免手动操作遗漏的可能性。我翻阅资料,发现已经有大佬......