【如何在 GitHub上面找项目】【转载】

这篇具有很好参考价值的文章主要介绍了【如何在 GitHub上面找项目】【转载】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

这篇文章教你精准地在GitHub搜索项目。

开源项目的组成部分

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

  • name: 项目名

  • description: 项目的简要描述

  • 项目的源码

  • README.md: 项目的详细情况的介绍

那么除了这些要素之外,项目本身的star数和fork数,也是评判一个开源项目是否火热的标准,这同时也是一个很重要的搜索标准。另外我们也要注意观察这个项目的最近更新日期,因为项目越活跃,那么它的更新日期也更加频繁。

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

如何搜索

那我们到底如何搜索呢?

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

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

按照 name 搜索

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

in:name React

得到如下结果:

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

现在我们来约束一下

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

in:name React stars:>5000

结果是这样的:

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

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

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

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

按照README来搜索

搜索README.md里面包含React的项目:

 in:readme React

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

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

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

按照descriptin搜索

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

in:description 微服务

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

in:description 微服务 language:python 

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

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

搜索结果精确了很多。

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

in:description 微服务 language:python pushed:>2020-01-01

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

【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

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

在 GitHub 上查找文件

可以使用文件查找器在仓库中搜索文件。 若要在 GitHub 上搜索多个存储库中的文件,请使用 path 代码搜索限定符。

提示:

默认情况下,文件查找器结果将排除某些目录,例如 build、log、tmp 和 vendor。 若要搜索这些目录中的文件,请使用 path 代码搜索限定符。或者,可以使用 .gitattributes 文件自定义默认排除的目录。
按键盘上的 t 键也可以打开文件查找器。 有关详细信息,请参阅“键盘快捷方式”。

使用文件查找器 

  1. 在 GitHub.com 上,导航到存储库的主页。
  2. 在“转到文件”搜索栏中,键入要查找的文件或目录的名称。
    【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github
  3. 或者,如果没有“转到文件”搜索栏,请单击“转到文件”,然后键入要查找的文件或目录的名称。

    【如何在 GitHub上面找项目】【转载】,GitHub项目推荐,github

  4. 在结果列表中,单击要查找的文件或目录。 在每个搜索结果下方可以查看目录或文件的文件路径。

自定义排除的文件
默认情况下,如果文件查找器结果存在于存储库根路径中,则结果不会包含以下目录中的文件:

.git
.hg
.sass-cache
.svn
build
dot_git
log
tmp
vendor

可以使用 .gitattributes 文件替代这些默认排除项。

为此,请在存储库根路径中创建或更新名为 .gitattributes 的文件,将应包含在文件查找器结果中的每个目录的 linguist-generated 属性设置为 false。

例如,以下 .gitattributes 文件会导致 build/ 目录中的文件可供文件查找器使用:

build/** linguist-generated=false

请注意,此替代需要使用递归 glob 模式 (**)。 有关详细信息,请参阅 Git 文档中的“模式格式”。 不支持对默认排除目录中的子目录进行更复杂的替代。

搜索仓库

可以在 GitHub 上搜索仓库,并使用这些仓库搜索限定符的任意组合缩小结果范围。

可以在所有 GitHub.com 内全局搜索存储库,也可以在特定组织内搜索存储库。 有关详细信息,请参阅“关于在 GitHub 上搜索”。

若要在搜索结果中包含分支,需要在查询中添加 fork:true 或 fork:only。 有关详细信息,请参阅“在复刻中搜索”。

提示:

有关可以添加到任何搜索限定符以进一步改善结果的搜索语法列表,请参阅“了解搜索语法”。
对多个字词的搜索词使用引号。 例如,如果要搜索具有标签“In progress”的问题,可搜索 label:"in progress"。 搜索不区分大小写。

按仓库名称、说明或自述文件内容搜索

通过 in 限定符,可将搜索范围限制到存储库名称、存储库说明、存储库主题、自述文件内容或这些项的任意组合。 如果省略此限定符,则仅搜索存储库名称、说明和主题。

限定符    示例
in:name    jquery in:name 匹配名称中带有“jquery”的存储库。
in:description    jquery in:name,description 匹配名称或说明中带有“jquery”的存储库。
in:topics    jquery in:topics 将带“jquery”标签的存储库匹配为主题。
in:readme    jquery in:readme 匹配自述文件中提及“jquery”的存储库。
repo:owner/name    repo:octocat/hello-world 匹配特定的存储库名称。

基于仓库的内容搜索

可以使用 in:readme 限定符,通过搜索存储库自述文件中的内容来查找存储库。 有关详细信息,请参阅“关于自述文件”。

除了使用 in:readme,还可以通过搜索存储库中的特定内容来查找存储库。 要搜索仓库内的特定文件或内容,您可以使用查找器或代码特定的搜索限定符。 有关详细信息,请参阅“在 GitHub 上查找文件”和“了解 GitHub 代码搜索语法”。

限定符    示例
in:readme    octocat in:readme 匹配自述文件中提及“octocat”的存储库。

在用户或组织的仓库内搜索

若要在特定用户或组织拥有的所有存储库中搜索,可使用 user 或 org 限定符。

限定符    示例
user:USERNAME    user:defunkt forks:>100 匹配来自 @defunkt 且具有超过 100 个分支的存储库。
org:ORGNAME    org:github 匹配来自 GitHub 的存储库。

按仓库大小搜索

size 限定符使用大于、小于和范围限定符查找与特定大小(以千字节为单位)匹配的存储库。 有关详细信息,请参阅“了解搜索语法”。

限定符    示例
size:n    size:1000 匹配正好为 1 MB 的存储库。
size:>n    size:>=30000 匹配至少为 30 MB 的存储库。
size:<n    size:<50 匹配小于 50 KB 的存储库。
size:n..n    size:50..120 匹配介于 50 KB 至 120 KB 之间的存储库。

按关注者数量搜索

可以使用 followers 限定符以及大于、小于和范围限定符,根据关注存储库的用户数量筛选存储库。 有关详细信息,请参阅“了解搜索语法”。

限定符    示例
followers:>=n    node followers:>=10000 匹配有 10,000 名或更多关注者提及“node”一词的存储库。
followers:n..n    styleguide linter followers:1..10 匹配有 1 至 10 名关注者提及“styleguide linter”一词的存储库。

按复刻数量搜索

forks 限定符使用大于、小于和范围限定符指定存储库应具有的分支数量。 有关详细信息,请参阅“了解搜索语法”。

限定符    示例
forks:n    forks:5 匹配只有五个分支的存储库。
forks:>n    forks:>=205 匹配至少有 205 个分支的存储库。
forks:<n    forks:<90 匹配具有少于 90 个分支的存储库。
forks:n..n    forks:10..20 匹配具有 10 到 20 个分支的存储库。

按星号数量搜索

您可以使用大于、小于和范围限定符,基于仓库的星标数量来搜索仓库。 有关详细信息,请参阅“使用星标保存仓库”和“了解搜索语法”。

限定符    示例
stars:n    stars:500 匹配正好有 500 个星标的存储库。
stars:n..n size:<n    stars:10..20 size:<1000 匹配有 10 到 20 个星标、小于 1000 KB 的存储库。
stars:>=n fork:true language:LANGUAGE    stars:>=500 fork:true language:php 匹配至少有 500 个星标(包括用 PHP 编写的分支星标)的存储库。

按仓库创建或上次更新时间搜索

您可以基于创建时间或上次更新时间过滤仓库。 对于存储库创建,可以使用 created 限定符;要了解存储库的最后更新时间,需要使用 pushed 限定符。 pushed 限定符将返回存储库列表,按存储库中任意分支上最近进行的提交排序。

两者均采用日期作为参数。 日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD(年-月-日)。 也可以在日期后添加可选的时间信息 THH:MM:SS+00:00,以按小时、分钟和秒进行搜索。 即 T,随后是 HH:MM:SS(时-分-秒)和 UTC 时差 (+00:00)。

搜索日期时,可以使用大于、小于和范围限定符来进一步筛选结果。 有关详细信息,请参阅“了解搜索语法”。

限定符    示例
created:<YYYY-MM-DD    webos created:<2011-01-01 匹配具有 2011 年之前创建的“webos”一词的存储库。
pushed:>YYYY-MM-DD    css pushed:>2013-02-01 匹配具有在 2013 年 1 月之后推送到其中的“css”一词的存储库。
pushed:>=YYYY-MM-DD fork:only    case pushed:>=2013-03-06 fork:only 匹配在 2013 年 3 月 6 日或之后将“case”一词推送到其中的存储库(即分支)。

按语言搜索

您可以根据仓库中代码的语言搜索仓库。

限定符    示例
language:LANGUAGE    rails language:javascript 匹配具有以 JavaScript 编写的“rails”一词的存储库。

按主题搜索

您可以找到按特定主题分类的所有仓库。 有关详细信息,请参阅“使用主题对仓库分类”。

限定符    示例
topic:TOPIC    topic:jekyll 匹配按“Jekyll”主题分类的存储库。

按主题数量搜索

可以使用 topics 限定符以及大于、小于和范围限定符,根据应用于存储库的主题数量来搜索存储库。 有关详细信息,请参阅“使用主题对仓库分类”和“了解搜索语法”。

限定符    示例
topics:n    topics:5 匹配具有五个主题的存储库。
topics:>n    topics:>3 匹配具有三个以上主题的存储库。

按许可搜索

您可以根据仓库中许可的类型搜索仓库。 您必须使用许可关键字,按特定许可或许可系列来过滤仓库。 有关详细信息,请参阅“许可仓库”。

限定符    示例
license:LICENSE_KEYWORD    license:apache-2.0 匹配根据 Apache 许可证 2.0 许可的存储库。

按仓库可见性搜索

您可以根据仓库的可见性过滤搜索。 有关详细信息,请参阅“关于仓库”。

| 限定符 | 示例 | ------------- | ------------- | | is:public | is:public org:github 匹配由 GitHub 所有的公共存储库。 | is:private | is:private pages 匹配你可以访问且包含“pages”一词的专用存储库。

基于仓库是否为镜像搜索

您可以根据仓库是否为镜像以及托管于其他位置托管来搜索仓库。 有关详细信息,请参阅“寻找在 GitHub 上参与开源项目的方法”。

限定符    示例
mirror:true    mirror:true GNOME 匹配为镜像且包含“GNOME”一词的存储库。
mirror:false    mirror:false GNOME 匹配不为镜像且包含“GNOME”一词的存储库。

根据存储库是否为模板搜索

你可以根据存储库是否是模板来搜索存储库。 有关详细信息,请参阅“创建模板仓库”。

限定符    示例
template:true    template:true GNOME 匹配是模板且包含“GNOME”一词的存储库。
template:false    template:false GNOME 匹配不是模板且包含“GNOME”一词的存储库。

基于仓库是否已存档搜索

您可以基于仓库是否已存档来搜索仓库。 有关详细信息,请参阅“存档仓库”。

限定符    示例
archived:true    archived:true GNOME 匹配已存档且包含“GNOME”一词的存储库。
archived:false    匹配未存档且包含“GNOME”一词的存储库。

根据带有 good first issue 或 help wanted 标签的议题数进行搜索

可以使用限定符 help-wanted-issues:>n 和 good-first-issues:>n 搜索具有最少标有 help-wanted 或 good-first-issue 的议题的存储库。 有关详细信息,请参阅“使用标签鼓励对项目做出有益的贡献”。

限定符    示例
good-first-issues:>n    good-first-issues:>2 javascript 匹配具有两个以上标有 good-first-issue 的议题且包含“javascript”一词的存储库。
help-wanted-issues:>n    help-wanted-issues:>4 react 匹配具有四个以上标有 help-wanted 的议题且包含“React”一词的存储库。

基于赞助能力的搜索

可以使用 is:sponsorable 限定符搜索其所有者可以在 GitHub Sponsors 上获得赞助的存储库。 有关详细信息,请参阅“关于 GitHub 赞助商”。

可以使用 has:funding-file 限定符搜索具有融资文件的存储库。 有关详细信息,请参阅“在仓库中显示赞助者按钮”。

限定符    示例
is:sponsorable    is:sponsorable 匹配其所有者拥有 GitHub Sponsors 配置文件的存储库。
has:funding-file    has:funding-file 匹配具有 FUNDING.yml 文件的存储库。

总结

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

  • 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上面找项目吗?文章来源地址https://www.toymoban.com/news/detail-789499.html

到了这里,关于【如何在 GitHub上面找项目】【转载】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 推荐 3 个令你惊艳的 GitHub 项目

    昨日 GitHub Trending 上榜的开源项目,基于 AI 技术提高你的生产力。借助 AI 你能搭建自己的数字人、搭建自己的法律助手、文档分析助手。 本期推荐开源项目目录: 1. 数字人开源项目 2. AI 法律助手 3. 为 PDF 文档打招一个聊天机器人 数字人开源项目 Fay 是一个数字人开源项目,

    2024年02月03日
    浏览(34)
  • Github点赞接近 100k 的Spring Boot学习教程+实战项目推荐

    很明显的一个现象,除了一些老项目,现在 Java 后端项目基本都是基于 Spring Boot 进行开发,毕竟它这么好用以及天然微服务友好。不夸张的说, Spring Boot 是 Java 后端领域最最最重要的技术之一,熟练掌握它对于 Java 程序员至关重要。 这篇文章我会推荐一些优质的  Spring Bo

    2024年02月03日
    浏览(49)
  • 推荐10个适合前端人员学习VR和AR相关的GitHub项目

    GitHub是一个开源代码库,其中包含了无数有用的项目和工具。对于前端开发人员来说,GitHub是一个非常有用的资源,可以帮助他们学习和实践各种技术,包括虚拟现实(VR)和增强现实(AR)技术。以下是10个适合前端人员学习VR和AR相关的GitHub项目,这些项目提供了学习和实践

    2024年02月16日
    浏览(27)
  • GitHub上13个高赞Java项目推荐,会一个就能跟面试官谈笑风生

    我见过不少程序员面试的时候刚开始谈的好好的,结果面试官一问到写过哪些项目,瞬间就哑火了。 应届生还好,面试官还会更注重你的基础方面,如果是一直CRUD的老码农跳槽被问到项目时没有拿得出手的干货,简直分分钟被pass掉,所以今天这篇文章给大家整理了GitHub上

    2024年02月16日
    浏览(32)
  • 如何在GitHub上面上传自己的项目/使用Github上传本地项目代码/怎样在GitHub上传自己的项目/github怎么上传一整个工程

    目录 1 注册github账号 2 第一次上传自己的项目 2.1下载git 2.2、新建仓库 2.3、上传项目 3、更新自己的项目 4、建立分支,修改分支 5、bug1 6、bug2 这个不教好吧 2.1 下载git 官网链接,安装不要选择带中文和空格的路径,直接next就行 2.2 新建仓库 右上角+,选择New repository,给项目

    2024年02月06日
    浏览(45)
  • 如何入门.NET Core ? 推荐这10个优秀的开源项目!

    .NET 5马上就要发布了,还不知道这些.NET Core开源项目? 只推荐干货!当然这些开源项目都是个人或组织开发的。 1.Ant Design Blazor .NET进行客户端Web开发又一利器。 微软官方认可,微软Build2020开发者大会Blazor介绍中,提及Ant Design Pro。一图胜千言,得到微软认可是对作者最大的

    2024年02月08日
    浏览(32)
  • python毕业设计项目推荐 - 最新毕设项目

    Hi,大家好,大四的同学马上要开始毕业设计啦,大家做好准备了没! 学长给大家详细整理了最新的python计算机毕设相关选题,对选题有任何疑问,都可以问学长哦~ 选题分享,技术解答: https://gitee.com/yaa-dc/warehouse-1/blob/master/python/README.md 人物头像的卡通化算法设计与实现

    2023年04月18日
    浏览(29)
  • 10个热门的ChatGPT项目推荐

    文末加小助手微信,回复ChatGPT,领取一份  66个ChatGPT副业赚钱技巧(原版) 在今天这个快节奏的社会中,人们越来越需要高效、智能的工具来帮助他们完成各种任务。随着人工智能技术的不断发展,聊天机器人成为了越来越受欢迎的工具之一。它们可以模拟人类对话,对各

    2024年02月05日
    浏览(47)
  • 各类值得收藏的开源项目推荐介绍

    对于测开同学来讲,现在想要开发一个项目,很多时候都不需要自己从零开始重复造轮子。目前市面上已经很多大佬们开源了一些非常不错的项目可以供大家学习借鉴使用,因此本篇文章为大家介绍搜集到的一些不错的项目,希望能帮助大家站在巨人的肩膀上前行,事半功倍

    2024年02月05日
    浏览(49)
  • 推荐系统简介+算法详解+项目介绍

    1、推荐系统目的 信息过载 让用户更快更好的获取到自己需要的内容 内容更快更好的推送到喜欢它的用户手中 让网站(平台)更有效的保留用户资源 即好的推荐系统–让三方共赢 2、推荐系统的应用 个性化音乐、电影视频、社交网络、个性化阅读、证券理财、个性化旅游、

    2024年02月06日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包