vscode本地历史默认开启,每次保存自动生成快照,保留30天最多50条,支持预览比对与部分恢复,不依赖git且数据存于VSCode缓存中。

VSCode 的本地历史记录(Local history)不是 Git 提交,但它能在你没提交、甚至没开 Git 仓库时,默默帮你存下每次保存前的文件快照——代码删错了、改乱了、误覆盖了,几秒钟就能找回。
本地历史怎么自动工作的?
VSCode 默认开启本地历史,无需额外配置。只要对文件执行过“保存”(Ctrl+S / Cmd+S),它就会在后台记录该文件上一次保存前的状态。每次保存都会生成一条历史条目,保留时间默认为 30 天(可调),最多存 50 条(按文件计算)。
- 只对已保存的文件生效(新建未保存的临时文件不会被记录)
- 不依赖 Git,即使项目没初始化仓库也能用
- 历史数据存在 VSCode 自己的缓存目录里(非项目内),卸载 VSCode 会丢失
三步快速恢复误删/误改的代码
右键编辑器标签页或文件资源管理器中的文件 → 选择 “从本地历史中还原…” → 在弹出的时间轴里选一个版本 → 点击右侧预览或直接点击 “还原”。
- 预览窗口支持语法高亮和行号比对,能清楚看到哪几行变了
- 想恢复部分内容?复制预览里的代码,粘贴回当前文件即可
- 如果还原后不满意,再点一次“从本地历史中还原…”,选更早的版本
关键设置与注意事项
打开设置(Ctrl+, / Cmd+,),搜索 “local history” 可调整行为:
- Files: auto Save 设为 “afterDelay” 或 “onFocusChange” 更利于生成有效快照(纯手动保存太依赖习惯)
- Workbench > Local History: Enabled 关闭即停用(一般不建议)
- Workbench > Local History: Max File Entries 和 Max Storage Size 可按需调大,尤其常改大文件时
- 本地历史不记录剪贴板操作、撤销栈内容或未保存的编辑状态
基本上就这些。它不取代 Git,但胜在零门槛、无感运行——写代码时少一分提心吊胆,多一分踏实。