Git学习笔记
封面(脑补表情包:一个程序员抱着Git图标痛哭流涕,配文"终于会用了!")
✨学习目标:从Git小白→Git玩咖,主打一个边玩边会✨
- 认识Git"大佬"
- 搞定前期准备(装软件、搞账号)
- 发布/克隆/提交/更新一条龙
- 专治代码"打架"(冲突解决)
- 玩转分支(再也不怕改崩主线)
- 查历史记录(后悔药管够)
1. Git介绍:版本控制界的"扛把子"
1.1 啥是Git?
简单说,Git就是个"时光机"!Linus大佬为了管Linux内核开发搞出来的神器,不管项目多大多小,都能把代码版本管得明明白白,主打一个高效不翻车。
1.2 版本控制分两类,别站错队!
| 类型 | 特点(人话版) | 代表选手 |
|---|---|---|
| 集中式 | 所有数据蹲在服务器上,没网=歇菜,服务器挂了=全完(还得备份,麻烦) | SVN、CVS(老古董了) |
| 分布式 | 每个电脑都存全套版本!没网也能瞎鼓捣,连网再同步,丢了一台电脑也不怕 | Git(就是咱主角) |
1.3 Git的"线上窝点"
- 国内版:码云(Gitee)→ 不用翻墙,网速飞起 🚀
- 国外版:GitHub → 程序员装X圣地,有账号+有项目=简历加分buff
1.4 Git工作流程:别瞎操作,按剧本走!
远程仓库Clone → 本地checkout到工作区 → add到暂存区 → commit到本地仓库 → push到远程
术语人话版:
- 工作区:你写代码的文件夹(工位)
- 暂存区:临时放改好的代码(半成品收纳箱)
- 本地仓库:你电脑里的Git库(部门小仓库)
- 远程仓库:码云/GitHub(公司总仓库)
2. 使用前的准备:磨刀不误砍代码
2.1 装Git:别装错,不然白忙活
- 去Git官网(https://git-scm.com/downloads)选Windows(打工人标配),点完自动下载(不用瞎点,等就行);
- 双击安装包,一路"下一步"但别瞎选:
- 路径随便改(别放C盘挤着);
- 组件默认(Git Bash是命令行,Git GUI是图形界面,都留着);
- 编辑器选Git默认的(别瞎选,新手别折腾);
- 勾选"Use Git from Git Bash only",剩下四步直接下一步;
- 安装完把俩勾选去掉,点Finish(别手贱点"启动Git",先歇会)。
2.2 IDEA配置Git:给IDEA装"Git插件"
打开IDEA → File→Settings→Version Control→Git → 选Git安装路径里的git.exe → 点Test,弹出版本就成(没弹?重新选路径,别手抖)。
2.3 搞定码云:注册+建仓库
- 去码云(https://gitee.com)注册账号(手机号就行,别忘密码);
- 建仓库:选"公开"(私有要花钱,咱穷鬼选手不配),填个名字就成(别瞎起名,不然自己都忘)。
3. 发布项目:把代码"送"到云端
3.1 先整个空工程+模块
⚠️ 重点:Git不认空文件夹!建完模块记得丢个文件(比如README.md),不然Git装瞎看不见。
3.2 本地建仓库:给代码找个"家"
- IDEA里点VCS→Import into Version Control→Create Git Repository;
- 路径选项目根目录(别瞎改,改了找不着),点OK;
- 此时项目文件变红(Git:"这货我还没管!");
- 去文件夹看,多了个.git隐藏文件夹(别删!删了仓库就没了,哭都没地方)。
3.3 暂存区:给代码"办暂住证"
右键项目→Git→Add → 文件名变绿(Git:"这货归我管了!")。
3.4 提交到本地仓库:给代码"办身份证"
- 右键项目→Git→Commit Directory;
- 填提交注释(别写"改了点东西",写清楚"加了登录功能""修了bug",不然回头自己都忘);
- 第一次提交会让填用户名+邮箱(随便填,但别乱填,不然同事找不着你背锅)。
3.5 推送到远程仓库:把代码"送"到总库
- 点VCS→Git→Push;
- 复制码云仓库地址,点Define remote粘贴,再点Push;
- 输码云账号密码,等几秒→提示成功(失败?大概率是密码错了,别慌)。
4. 克隆项目:把云端代码"薅"到本地
4.1 先删本地工程(别删错!删自己的测试工程,别删公司代码)
4.2 克隆:一键"复制"代码
- IDEA点VCS→Get from Version Control;
- 复制码云仓库地址,粘贴到URL→点Clone;
- 选"This Window"→导入项目(别选错窗口,不然开俩IDEA,卡到怀疑人生)。
5. 提交修改:改完代码别忘更
5.1 改代码:随便改(别改崩,不然哭)
5.2 提交到本地:
右键改好的文件→Git→Commit File → 填注释→Commit(别忘写注释,不然老板问你改了啥,你忘得一干二净)。
5.3 推到远程:
右键文件→Git→Push → 点Push→搞定(推完去码云看看,确认更了,不然白改)。
6. 更新代码:每天第一件事,别忘更!
6.1 模拟场景:同事改了代码并推到远程(抢你活是吧?)
6.2 更代码:
右键项目→Git→Pull → 等几秒,代码就同步了(⚠️ 每天早上先更!不然你改的代码和同事的冲突,有你哭的)。
7. 冲突解决:代码"打架"了,劝架!
7.1 模拟场景:
- 你改了本地代码,同事改了远程同一段代码,还先推了;
- 你再推,Git:"打起来了!我不管,你自己劝架!"
7.2 劝架步骤:
- 提交时提示冲突,选Merge(别选覆盖!覆盖=删你代码/删同事代码,必挨骂);
- 手动合并:点冲突面板的Merge→手动选要保留的代码(别瞎选,先问同事改的是啥);
- 合并完再提交推送(劝架成功,代码和平共处)。
劝架原则:
- 每天早上更代码(别攒冲突);
- 改一点提交一点(别攒活,攒多了冲突到崩溃)。
8. 分支使用:别在主线上瞎改,会崩!
8.1 为啥建分支?
主线(master)是稳定版,改崩了全公司歇菜!给每个功能建分支(比如dev、feature-login),改崩了只影响自己,主打一个"死道友不死贫道"。
8.2 建分支:
- 右键项目→Git→New Branch → 输分支名(比如dev-登录功能)→Create;
- 把分支推到码云:Push的时候选这个分支,推完码云就有了;
- 在分支上改代码(随便造,崩了也不怕),改完提交推送。
8.3 合并分支:功能做好了,归队!
- 切回master分支(别在dev分支合并,反了);
- 右键项目→Git→Merge → 选要合并的dev分支;
- 合并完把master推到码云(主线更新,完美)。
9. 历史记录:后悔药管够!
- 右键文件→Git→Show History → 能看所有提交记录(谁改的、改了啥、啥时候改的,一目了然);
- 回退版本:删错代码?选上一个版本→点Get → 代码瞬间回来(Git:后悔药,管够!)。
🎯 学习总结(顺口溜版)
Git用得6,代码不迷路;
先更后改不冲突,分支别忘合入主;
提交注释写清楚,历史记录能救苦;
本地远程同步好,摸鱼摸得没烦恼!