陽楷锴的小港
911 字
5 分钟
通过VS Code历史记录恢复误删文件
2024-05-01
无标签

如果你误删了,并且试图恢复一个曾经用Visual Studio Code保存过的文件,按下⌘ + ⇧ + P(对于Windows:Ctrl + Shift + P)呼出主命令面板,输入并运行Local History: Find Entry to Restore命令,即可浏览和查找VS Code为你保存的文件历史记录。


是的,我要连发两篇文章。

看到这个标题,而且两篇文章挨这么近,就很难不想象是不是发生了一些事情(汗)。要知道,在笔者,本站站长,陽楷锴,写完上一篇文章(邂逅电邮假冒和其承载的钓鱼网站)之后,不知道脑子抽什么风,就想着要更新一下主题。于是很快啊,啪的一下就打开了GitHub,然后saicaca/fuwari最新Zip直接就下载下来,Safari直接就自动解压,然后往项目文件夹里直接就复制,粘贴,全部替换。

没错,直接就复制,粘贴,全部替换,一气呵成。有的时候我自己都佩服我自己的动作居然这么行云流水。我打开VS Code,打算用它提供的图形化Git看一下我的自定义修改啥的,得兼顾主题更新和自定义内容啊,而且Astro框架和主题高度同构,我的文章源文件还得从Git恢复回来呢。于是,发现,其中没有显示Deleted状态下红色文件名的encounter-email-spoofing-and-more.md。我怕了,于是转念一想,当时「一气呵成」的时候好像忘了……把上篇文章的源文件stage到Git里,更没有commit,更没有push到GitHub。

我开始上网搜索Mac恢复文件的办法,因为我在废纸篓里根本没看到这个文件。看到好几个数据恢复软件,但是一上来就要我许可证,我感觉不太靠谱,就像骗子公司生产的骗子产品,比上篇文章里的诈骗邮件还像骗子,毕竟是装都不装了直接要钱~

根本不敢用那些数据恢复软件之下,我打开了Time Machine。发现我没有连接备份盘的情况下,Time Machine不会创建任何快照。上一次连接是两天前啊……自然是找不到这个该死的encounter-email-spoofing-and-more.md了。

重新写的心都有了,想想花了两三个小时写的,有这时间不如去打点游戏,或是睡点觉……想放弃的时候,想起来VS Code在我刚刚前往它的图形化Git功能的时候还打开着那个该死的encounter-email-spoofing-and-more.md,虽然它好像当时显示着找不到该文件和一个令人害怕的红色叉叉。我觉得这是我最后一线希望了,翻着一个又一个菜单,我仍然没能找到相关入口,心越来越慌了。

最后呢?我重写了吗?没有。去Bing查了一下VS Code到底有没有恢复文件的功能,结果还真的给我找到了:vscode 恢复被删除的文件 - 知乎。我跟看到救星一样又跑到VS Code里,一套⌘ + ⇧ + P然后Local History: Find Entry to Restore,像刚才全部替换的时候一样一气呵成,终于,我找到了这个文件。谢天谢地,直接恢复到覆盖前的版本,找回了我几个小时的心血。

呜呜呜,再也不嫌弃VS Code体积大了,也再也不乱删它的缓存了,说不定哪天就……哎,真的都是泪。

Visual Studio Code,听我说谢谢你。

Astro,听我说,我也谢谢你。