5分钟搞懂Git和GitHub:编程小白也能看懂的入门指南
用生活化的比喻讲清Git和GitHub是什么、什么关系、怎么用,零基础也能看懂。
上周一个学编程的朋友崩溃地问我:“我明明把代码存到GitHub上了,为什么电脑重装后全没了?”
我一听就知道问题出在哪——他把Git和GitHub当成一回事了。
这不是个例。几乎每个编程新手都在这两个词上栽过跟头。今天我用最通俗的方式,帮你彻底搞懂。
Git是什么?说白了就是“修改记录仪”
想象你在写一篇毕业论文。
你写了一段,觉得不错,保存为“论文v1”。改了两天后,又保存为“论文v2”。导师提了修改意见,你改完保存为“论文v3_导师修改版”。突然有一天,你发现v1里有一段写得特别好,想找回来——但你已经覆盖掉了。
Git就是帮你自动管理这些版本的工具。
它像一个隐形的记录仪,默默记录你对文件的每一次修改。任何时候你都可以:回到过去的任意一个版本、看看某一行是谁在什么时候改的、同时尝试两种不同的方案且互不干扰。
用专业术语说,Git是一个分布式版本控制系统。但说白了,它就是你的“时光机+修改记录仪”。
Git诞生于2005年,创造者是Linux系统之父Linus Torvalds。当时Linux内核开发团队急需一个高效、免费的版本管理工具,于是他花了两周写出了Git的雏形。如今,全球超过90%的软件项目都在用Git管理代码。
Git像时光机一样记录每一次修改,随时可以回到过去
GitHub是什么?说白了就是“代码的百度网盘+朋友圈”
GitHub是一个网站,专门用来存放和管理Git仓库。
继续用论文的比喻:Git帮你管理论文的各个版本,但这些版本都存在你自己的电脑里。如果你想分享给导师看、想和同学协作修改、或者想备份到云端——你就需要一个“网盘”。
GitHub就是这个“网盘”。
但GitHub远不止网盘这么简单。它更像一个程序员的社交网络:你可以把代码公开分享,让全世界的人看到你的作品;你可以给别人的项目提建议(这叫“提Issue”);你可以直接帮别人改代码(这叫“Pull Request”);你可以收藏感兴趣的项目(这叫“Star”);你可以把别人的项目复制一份自己改着玩(这叫“Fork”)。
GitHub于2008年上线,2018年被微软以75亿美元收购。截至2024年,GitHub拥有超过1亿注册用户,是全球最大的代码托管平台。
GitHub不只是存代码的地方,更是全球程序员的协作平台
Git和GitHub到底是什么关系?
这是最容易搞混的地方,我用一个比喻帮你彻底分清:
Git是“相机”,GitHub是“相册App”。
相机负责拍照(Git负责记录版本);相册App负责存储和分享照片(GitHub负责存储和分享代码);你可以用相机拍照但不传到相册(只用Git不用GitHub);你也可以把照片传到其他相册,比如百度网盘(除了GitHub,还有GitLab、Gitee等替代品)。
一句话总结:Git是工具,GitHub是平台。Git管版本,GitHub管分享。
很多人以为“把代码传到GitHub”就等于“用了Git”,这是最大的误解。实际上,GitHub只是Git的一个“远程仓库”,你电脑上的Git才是真正干活的那个。
为什么你一定要学?
你可能会想:“我又不是程序员,学这个干嘛?”
三个理由:
第一,Git是编程世界的“普通话”。 不管你是前端、后端、数据科学还是AI方向,Git是所有人协作的基础语言。不会Git,就像去国外不会说英语——能活,但处处受限。
第二,GitHub是你的“第二份简历”。 越来越多的公司在招聘时,会直接看候选人的GitHub主页。你的代码、你的项目、你参与过的开源贡献,比任何简历都更有说服力。一个活跃的GitHub主页,胜过十页PPT简历。
第三,Git能救你的命。 你有没有过这种经历:改了一下午代码,结果改崩了,还回不去?有了Git,你随时可以一键回退到之前的版本。Git给你的不是技术,是安全感。
而且,Git和GitHub不只是程序员的工具。写作者用它管理书稿,设计师用它管理设计文件,甚至有人用它来写法律合同——任何需要“版本管理”的场景,Git都能帮上忙。
怎么用?两种方法任你选
方法一:命令行(推荐,其实没那么可怕)
很多新手一听到“命令行”就害怕。但Git的命令行其实就几个常用命令,记住就能应付90%的场景。
第一步:安装Git。 去 git-scm.com 下载安装包,一路点“下一步”就行。Mac用户打开终端,输入 git —version,系统会自动提示安装。
第二步:配置你的身份。 打开终端(Mac)或命令提示符(Windows),输入以下命令。这就像在文件上签名,告诉别人“这代码是我写的”。
git config —global user.name “你的名字”
git config —global user.email “你的邮箱”
第三步:记住最常用的6个命令。
git init — 初始化仓库,意思是“开始记录这个文件夹”
git add . — 添加修改,意思是“把改动放进购物车”
git commit -m “说明” — 提交版本,意思是“结账,并写个备注”
git push — 推送到GitHub,意思是“上传到云端”
git pull — 拉取最新代码,意思是“下载别人的更新”
git clone 地址 — 克隆项目,意思是“把别人的项目下载下来”
一个完整的日常流程就是三行命令,10秒搞定:
git add . (把今天的改动加入购物车)
git commit -m “修复了登录Bug” (结账,写清楚改了什么)
git push (上传到GitHub)
真的没那么难。
命令行看起来硬核,但常用的Git命令其实只有6个
方法二:桌面端工具(不想记命令就用这个)
如果你实在不想碰命令行,GitHub官方提供了一个免费的桌面端工具:GitHub Desktop。
去 desktop.github.com 下载安装。它的界面就像一个普通的软件:左边是改动列表,改了哪些文件一目了然;左下角写提交说明;点一下“Commit to main”就完成了提交;再点一下“Push origin”就上传到了GitHub。
全程鼠标操作,零命令行。
除了GitHub Desktop,还有两款也很受欢迎:Sourcetree(功能更强大,适合进阶用户)和GitKraken(界面最漂亮,但部分功能收费)。
对于新手,我建议先用GitHub Desktop上手,等熟悉了Git的工作流程后,再慢慢过渡到命令行。命令行虽然看起来“硬核”,但一旦习惯,效率远超任何图形工具。
新手最容易踩的3个坑
坑一:忘记git add就直接commit。 结果发现什么都没提交上去。记住:add是放进购物车,commit是结账,必须先add再commit。
坑二:commit信息乱写。 很多人写“改了点东西”“修bug”这种毫无信息量的说明。一周后自己都看不懂改了什么。好的commit信息应该像新闻标题:一句话说清楚改了什么、为什么改。
坑三:push之前不pull。 如果你和同事同时在改同一个文件,你直接push可能会冲突。养成习惯:先pull再push。
一句话总结:Git管版本,GitHub管分享。Git是工具,GitHub是平台。学会它们,你就拿到了编程世界的入场券。
你用过Git或GitHub吗?是命令行派还是桌面端派?评论区聊聊你的体验。
如果这篇文章对您有用的话,欢迎点赞、推荐、分享~
——————
扫码关注,获取更多AI时代生存指南