Git 全栈生存指南:Vibe Coding 的后悔药
Vibe Coding 核心:在 AI 时代,Git 不是用来“管理代码”的,它是你的**“无限后悔药”和“游戏存档器”**。不要背命令,理解它是如何帮你“保存进度”的。
1. 为什么你需要 Git? (The "Why")
想象一下:
- 无限撤回:AI 把代码改烂了,你想回到 10 分钟前的状态?Git 能行。
- 平行宇宙:你想试一个疯狂的新功能,但不想破坏现在的稳定版本?Git 能行。
- 云端备份:电脑炸了,代码还在 GitHub 上。
2. 第一次亲密接触 (Setup)
如果你是第一次用,先告诉 Git 你是谁。这就像游戏建号。
bash
# 设置用户名 (建议用英文)
git config --global user.name "Your Name"
# 设置邮箱 (GitHub 注册邮箱)
git config --global user.email "your_email@example.com"初始化仓库 (Start a new game) 在你的项目文件夹里:
bash
git init这会在当前目录创建一个 .git 隐藏文件夹,你的“存档记录”都在这。
3. 日常三板斧 (The Daily Loop)
这是你 99% 时间都在用的三个动作。背下来,刻进 DNA 里。
第一步:装车 (Add)
把修改过的文件放到“暂存区”。
bash
# 把所有修改过的文件都装进去 (最常用)
git add .第二步:存档 (Commit)
生成一个永久的记录点。
bash
# -m 后面是本次存档的说明
git commit -m "完成了登录页面的 UI"Vibe Tip: 不知道写什么?直接写
git commit -m "update"也行,或者让 AI 帮你写:git commit -m "feat: user login layout"。
第三步:同步 (Push)
把本地存档上传到 GitHub 服务器。
bash
git push(注意:第一次 push 可能需要 git push -u origin main,之后直接 git push 即可)
4. 平行宇宙:分支魔法 (Branches)
分支 (Branch) 是 Vibe Coding 的神器。当你让 AI 做一个大改动时,永远不要在主分支 (main) 上直接搞。
创建并切换 (New Timeline)
bash
# 创建一个叫 new-feature 的分支,并切换过去
git checkout -b new-feature现在你可以随意折腾,就算把代码全删了,主分支 main 也是安全的。
查看分支
bash
git branch切回主线
bash
# 切换回 main 分支
git checkout main合并分支 (Merge)
如果你对 new-feature 的修改很满意,想把它合并到主线:
- 先切回主线:
git checkout main - 执行合并:
git merge new-feature
5. 救命锦囊:后悔药大全 (Lifesaving Commands)
这是本手册最有价值的部分。 当你(或 AI)搞砸了的时候,看这里。
场景 A:我刚改了一堆代码,结果跑不通了,想全部撤销,回到上次 Commit 的状态。
bash
# 危险!这会丢弃所有未 Commit 的修改
git checkout .
# 或者新版写法
git restore .场景 B:我 Commit 了,但发现刚才的代码是垃圾,想撤销这个 Commit。
bash
# 软撤销:撤销 Commit 动作,但保留代码修改 (给你机会再改改)
git reset --soft HEAD^
# 硬撤销:彻底回到上一个版本,连代码修改都不要了 (慎用!)
git reset --hard HEAD^场景 C:我在错误的分支上改了代码,还没 Commit,想带到另一个分支去。
bash
# 1. 把修改“藏”起来
git stash
# 2. 切换到正确的分支
git checkout correct-branch
# 3. 把修改“拿”出来
git stash pop场景 D:我也不知干了啥,反正现在的代码乱套了,我想看看我以前都干了啥。
bash
# 查看精简的历史记录
git log --oneline --graph6. 远程协作 (Remote)
下载别人的代码 (Clone)
bash
git clone https://github.com/username/repo.git获取最新更新 (Pull)
如果别人(或你在另一台电脑)更新了代码,你需要拉取下来。
bash
git pull7. Vibe Coding 最佳实践
- 小步快跑:AI 每完成一个独立的小功能(比如“写好了 HTML 结构”),就执行一次
add+commit。不要等全做完了再存。 - 分支隔离:试错性质的功能(比如“尝试接入一个新的 API”),一定要开新分支。成功了 Merge,失败了直接删掉分支。
- .gitignore:确保你的
.gitignore文件里包含了node_modules、.env等不需要上传的文件。这能救你的命(防止 API Key 泄露)。
终极心法:Git 是工具,不是目的。如果实在搞不定 Git 冲突,把代码备份一份,删了
.git文件夹重新init也是一种(虽然不优雅但有效的)Vibe 解决方法。