一句话: 三个最常用的 git 救急操作——只恢复一个文件不切分支、不切分支查看老版本内容、删除误追踪的大文件。每次改坏代码时救命。
适合谁读:用 git 但只会 commit/push,改坏代码不知道怎么恢复的嵌入式开发者。
只恢复一个文件
改坏了main.c,不想切回整个分支——只恢复这一个文件的老版本:
git checkout <commit-hash> -- main.c其他文件不受影响。比git reset --hard安全得多——reset 会把所有文件全滚回去。
看老版本内容不切分支
想看老版本里某文件长什么样,但不想切分支:
git show <commit-hash>:path/to/file.c终端打印文件内容。看完 Ctrl+C 就回到当前——比 checkout 整个分支快。
大文件误追踪
.gitignore 没写好,PCB 文件、zip 包被 git 追踪了:
git rm --cached file.pcb # 从仓库删但保留本地文件 echo "*.pcb" >> .gitignore # 以后不再追踪.gitignore要在首次 commit 前配好。已经提交过的大文件用rm --cached补救。
改坏代码的 SOP
cp file.c file.c.bak # 1. 备份当前 git checkout HEAD -- file.c # 2. 回滚到上次 commit # 编辑... # 如果又坏了: cp file.c.bak file.c # 3. 秒恢复到改之前备份 + git = 两道保险。改坏也不怕。
有用的话点个收藏,下次调试直接用。有问题欢迎评论区交流,看到了都会回。