快速入门 GitHub 方法

对于编程新手而言,如果一开始就知道利用 GitHub 来提高自己的技术水平,那一定会进步很快。

  • 如何参与项目
  • 编程初学者如何在 GitHub 寻找适合自己的小项目

一、如何参与项目

如果你想参与某个开源项目,你首先要做的是先了解这个项目,最好的方式是先仔细阅读它的 README。

一个标准的 README 应该包含以下内容:

通过项目背景 可以了解这个项目动机和背景是什么,是为了优化什么问题还是因为市面上其它的项目太渣渣。

然后通过 安装使用 知道项目如何运行起来,方便查看细节。

最后就需要查看它的 参与贡献方式 ,有的是 希望你提交 issue,有的是直接 push,有的是加群一起协作。

题主还问到 「核心的一些架构我暂时是力不从心的,那我还能为这个项目做什么呢」,这一点你不用担心,哪怕你只是修改里面的一个错误单词,一句错误的语法对于整个项目来说也是很有作用的。

这不是开玩笑。

一个 4 岁小女孩就给 Linux 内核贡献提交。

链接:https://www.reddit.com/r/linux/comments/2pqqla/kernel_commit_4_year_old_girl_fixes_formatting_to/cmzfvpl/

我们看看她修改了什么

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=690b0543a813b0ecfc51b0374c0ce6c8275435f0

在里面可以看到就是改了一个 「 - 」字符而已。

没有用过 git 的同学可能看不懂这个修改,即使用过的同学刚开始也觉得一脸懵逼,git 的 diff 修改会在前面显示 - 和 + 符号,这样看就知道了,实际上就增加了一个字符 - 。

为什么要修改这个字符?

我们看到,正常情况下「--------」和上面的字符串是对齐的,但是刚好修改的那行是没有对齐的,所以是有问题的,是不严谨的。

虽然是一个很小的修改,但是这个修改的意思非常大。

1、Linux 内核可以让所有人参与进来。

2、Linux 内核非常严谨,只要有错误,任何人都可以修改它。

说说这个修改的由来

在修改的提交记录里面,是这样写

他的侄女发现那个 「 s 」字母很孤单,用她的话说是不开心,加上「 - 」后就显得开心了。

非常细心的一个举动,这个修改在 riddit 上,很多人在激烈的讨论,有人认为这个修改没有什么作用,不就是一个字符而已,但是很多人对这个小女孩产生钦佩,觉得他是一个非常认真仔细的人。

希望这个小女孩的故事能够帮题主解惑。

原文链接: 4岁小女孩给Linux内核贡献提交_嵌入式Linux-CSDN博客 原文出处:CSDN博客 原文作者: 写代码的篮球球痴

二、编程初学者如何在 GitHub 寻找适合自己的小项目

GitHub 成立于 2008 年,截止到 2015 年,GitHub 已经有超过两千八百万注册用户和5700万代码库

对于新手而言,要从这浩瀚的代码库中找到适合自己小项目无异于大海捞针,如果有个类似于 hao123 那样的导航网站就好了!

登登登,还真有,一个国人建立的开源项目:HelloGitHub,致力于分享 GitHub 上有趣,入门级的开源项目,对于编程新手而言十分友好。

地址: https://github.com/521xueweihan/HelloGitHub

在项目中,内容每月 28 号以月刊的形式更新发布,主要是面向编程新手、热爱编程、对开源社区感兴趣人群的项目。更新的内容主要包括:各种语言的流行项目、入门级项目、让生活变得更美好的工具、书籍、学习心得笔记、企业级项目等。

这些开源项目大多都是非常容易上手、很 Cool,能够让你用很短时间感受到编程的魅力和便捷。从而让大家感受到编程的乐趣,动手开始编程。

这些项目都有一些共同的特征,那就是很酷,非常容易上手的项目,编程的魅力和便捷体验起来就是这么简单。

对于编程新手而言,不管你是学 Java,还是学 Python,哪怕你是编程小白,不懂代码,也总能在里面找到适合你的项目。

这个新手项目还不够?那在推荐一个类似但更有趣的开源项目:GitHubDaily。

链接:https://github.com/GitHubDaily/GitHubDaily

GitHubDaily 每日不定时推送一批 GitHub 上优秀的开源项目给开发者, 帮助开发者们发现当下最火的开源项目, 令开发者们得以掌控技术脉搏, 扩大自己的技术视野, 并从开源项目的学习中获得技术能力的提升。

它分门别类的整理了好多有趣的项目,适合新手在零碎时间去阅读学习,了解 GitHub 的生态。

相关推荐
meilindehuzi_a6 小时前
从零理解并实现 RAG:用 LangChain.js 构建语义检索问答系统
开发语言·javascript·langchain
风流 少年6 小时前
Julia
开发语言·julia
江畔柳前堤6 小时前
GO01-Go 语言与主流编程语言深度对比
开发语言·人工智能·后端·微服务·云原生·golang·go
:-)7 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
鱼樱前端7 小时前
别再自己拼凑了!这款 Vue 3.5+ 严肃产品级组件库,把 AI 对话、工作流和复杂数据全包了!
javascript·vue.js·github
GIS阵地8 小时前
QgsRasterDataProvider 完整详解(QGIS 3.40.13 C++)
开发语言·c++·qt·开源软件·qgis
寒月小酒9 小时前
第三章 索引构建(2-all -in-rag学习)
学习
yaoxin5211239 小时前
462. Java 反射 - 获取声明类与封闭类
java·开发语言·python
天国梦9 小时前
中学生居家英语听力训练深度解析:从核心痛点到AI赋能的全链路方案
人工智能·学习
阿里嘎多学长9 小时前
2026-07-14 GitHub 热点项目精选
开发语言·程序员·github·代码托管