Skip to content
0

Git 回滚 + 备份分支操作指南(实战版) ​

🎯 使用场景 ​

当你遇到:

  • 想回退到某个历史版本
  • 但又不想丢掉当前修改
  • 想保留“实验代码 / 临时修复”

👉 使用本指南


🧠 核心思路 ​

text
保留当前 → 开分支
回退主线 → reset

✅ 标准操作流程(推荐) ​

🥇 第一步:先备份当前代码 ​

bash
git branch backup-before-reset

🥈 第二步:回退到指定 commit ​

bash
git reset --hard <commit_id>

例如:

bash
git reset --hard 9b7579187f3e93bd82465e86e9099a2a20cb23f5

🥉 第三步:确认状态 ​

bash
git log --oneline -n 3

🚨 如果已经 reset(补救方案) ​

查看操作历史 ​

bash
git reflog

示例 ​

text
74c97b9 HEAD@{1}: commit: fix 临时修复
9b75791 HEAD@{0}: reset: moving to xxx

从历史恢复为分支 ​

bash
git checkout -b temp-backup 74c97b9

🧩 分支结构建议 ​

分支名用途
master / main稳定版本
temp-backup临时保存
feature-xxx功能开发
fix-xxxBug 修复

🚀 推送到远程 ​

推送临时分支 ​

bash
git push origin temp-backup

强制回滚主分支(慎用) ​

bash
git push -f origin master

🧠 常见错误 ​

❌ 直接 reset 不备份 ​

后果:只能通过 reflog 找回


❌ 删除单个 node_modules 包 ​

正确方式:

bash
rm -rf node_modules

❌ npm / pnpm 混用 ​

建议统一一个包管理器


🧰 常用命令速查 ​

查看历史 ​

bash
git log --oneline

查看操作历史 ​

bash
git reflog

新建分支 ​

bash
git checkout -b 分支名

回退版本 ​

bash
git reset --hard commit_id

恢复文件 ​

bash
git checkout commit_id -- .

🎯 推荐工作流 ​

text
开发 → 不满意
↓
git branch backup
↓
git reset --hard 某版本
↓
需要旧代码 → 从 backup 分支取

💡 总结 ​

reset 前先 branch,后悔永远有路

最近更新

基于 VitePress + Teek 主题构建