Git入门:3条命令,你的代码再也不怕丢
你有没有经历过这样的噩梦——改了一下午代码,突然发现删掉了一个关键文件,Ctrl+Z已经按不回来了?或者把代码改得面目全非,后悔没留个备份?根据Stack Overflow 2024开发者调查,93%的专业开发者使用Git作为版本控制工具——这不是面试加分项,这是编程的基本生存技能。

读完这篇文章,你将学会用3条命令搞定Git基本操作,从此代码修改有”后悔药”。
Git是什么?一句话版本
Git是一个版本控制工具——你可以把它想象成代码的”游戏存档”。每次你完成一个功能点,就存个档。哪天改崩了,随时读档回到之前的任意一个存档点。Git由Linux之父Linus Torvalds在2005年创建,现在是全球最流行的版本控制系统。
安装Git(1分钟)
macOS:打开终端,输入 `git –version`,系统会提示安装Xcode命令行工具,点”安装”即可。
Linux(Ubuntu/Debian):`sudo apt install git -y`
Windows:去 [git-scm.com](https://git-scm.com) 下载安装包,一路点”Next”就好。安装时会自带一个叫Git Bash的终端,后续命令都在这里输入。
装完验证:`git –version` 出现版本号就成功了。
核心三步:init → add → commit
这是Git最核心的工作流,没有之一。你每天至少用几十次。
### 第一步:`git init` — 初始化仓库
打开终端,进入你的项目文件夹,输入:
cd ~/my-project
git init这条命令会在当前目录创建一个`.git`隐藏文件夹——这就是Git的”存档数据库”。你的所有版本记录都存储在这里。
### 第二步:`git add` — 添加到暂存区
改完代码后,告诉Git”这些文件我要存档”:
git add 文件名 # 添加单个文件
git add . # 添加当前目录所有修改(最常用)这里有一个关键概念:`git add` 是把修改放进”暂存区”(staging area),相当于把要存档的东西摆到桌面上。不`add`的东西不会进入存档。
### 第三步:`git commit` — 提交存档
git commit -m "修复了登录页面的bug"`-m` 后面跟的是提交信息(commit message)——一定要写清楚你做了什么。好的commit信息让三个月后的你自己也能一眼看懂这次改了什么。规范写法是用动词开头:
– `git commit -m “添加用户注册功能”`
– `git commit -m “修复搜索框空值崩溃的问题”`
到此为止,你已经完成了Git最基本的工作流。每次改完代码,走一遍 `add` → `commit`,你的代码就有了版本记录。
两个必学的辅助命令
### `git status` — 查看当前状态
这是你用得最多的命令。它会告诉你:
– 哪些文件修改了但还没 `add`(红色)
– 哪些文件已经 `add` 了但还没 `commit`(绿色)
– 当前分支名
git status建议每次改完代码先跑一遍 `git status`,看清楚要提交什么,再 `add` 和 `commit`。这是养成好习惯的关键一步。
### `git log` — 查看提交历史
想看之前都存了哪些档?用这个:
git log --oneline # 简洁模式,一行一个版本记录输出类似:
a1b2c3d 修复登录页面bug
e4f5g6h 添加用户注册功能
i7j8k9l 初始化项目每一行前面那串字母数字叫commit hash——它是每个存档的唯一身份证。后面会学到用它来”读档”回到任意版本。
新手常见坑
坑1:忘记写 `-m`
直接输入 `git commit` 不带 `-m`,系统会弹出一个vim编辑器让你写commit信息。vim对新手不友好——如果你进去了不知道怎么退,按 `Esc` 键,然后输入 `:q!` 回车退出,重新用 `git commit -m “你的信息”`。
坑2:commit之后发现改错了
这是最常见的心碎时刻——刚提交完,发现有个变量名打错了。别慌:
# 修改那个文件
git add 文件名
git commit -m "修正变量名拼写错误"就这么简单——Git鼓励小步提交。一次commit只做一件事,出问题也容易定位。大厂的最佳实践是每个commit的修改不超过50行。
坑3:不知道该不该add某个文件
有些文件不应该提交到Git——比如编译产生的`.class`文件、node_modules文件夹、包含密码的配置文件。解决办法是创建一个`.gitignore`文件:
echo "node_modules/" > .gitignore
echo "*.log" >> .gitignore所有匹配`.gitignore`规则的文件,Git会自动忽略。
今天的动手任务
打开终端,随便建一个文件夹,走一遍完整流程:
mkdir git-practice && cd git-practice
echo "Hello Git" > readme.txt
git init
git add .
git commit -m "第一次提交"
git log --oneline看到那一行commit记录了吗?恭喜你,你已经拥有代码时光机了。
下期预告
今天学会了 `init` / `add` / `commit` 这三板斧。下次我们讲 `git diff` 和 `git reset`——如何精确查看每次改了什么,以及如何真正”穿越”回任意一个历史版本。
— END —
LC 智趣厅 · 科技与生活的交点
ihygg.cn
