今天操作 VSCode 不小心将写了两天的组件删了,由于没有 commit 所以当时就慌了,因为这种文件是没有记录的,删除也不会走回收站。查了半天资料,总算还是找到了恢复方法。
注意提交 commit
注意提交 commit
注意提交 commit
重要的事情说三遍
避免大家遇到同样的问题,没解决,一起学习一下吧!
VSCode 时间线
在 VSCode 1.44 版本之后,VSCode 内置了
时间线
(Timeline)功能。本文就来看看如何使用时间线功能防止误删文件造成损失。就是我们面板中这个 tab。
时间线
单纯的是 VSCode 在记录操作文件,工作区,git 记录的功能,在 1.4.4 版本之前,则需要下载对应插件来实现(如:Local History 插件)。所以没有
提交 git
也可以。
当文件被修改和保存之后,时间线中就会出现一个新的节点,这个节点就是代码文件的历史版本。
现在我们可以通过它来实现
回退
和
比较
等功能,这就和 git 一样,都是版本控制。
点击
时间线
面板右侧的筛选按钮,可以选择面板中显示的记录类型,目前包括
本地文件记录
和
Git 提交记录
,可以按需显示。
如果只勾选 Git 提交记录,则相当于在查看文件的 Git 提交历史,非常方便。
重点:时间线功能要你在 VSCode 中打开对应文件,他记录的是
当前开启文件
的相关操作记录,误删的文件咋办。
本地文件历史功能
如果一个文件被误删除了,那么它在 VSCode 中将无法被显示、打开,所以也就没有所以
时间线
功能面板了。
不过我们要知道,文件在的时候,被操作他都会被记录到
时间线
中,这些记录都需要存储,VSCode 才能正确的打开它,所以本地存了许多之前操作的历史版本。因为他需要作为比较对象,或者还原。
我们只需要知道 VSCode 记录功能的历史文件地址就好了,查找如下
Mac OS 系统:
cd /Users/xxx/Library/Application Support/Code/User/History
Windows 系统:
cd C:\Users\xxx\AppData\Roaming\Code\User\History
为了方便搜索,我就用 VSCode 打开 History 文件夹了,你也可以用自己喜欢的软件或者终端命令搜索。
一个文件夹是一个文件的相关记录,这是 VSCode 通过 hash 生成的,我们别管,直接使用全局搜索功能:
可能历史版本会有很多,自己找一找自己的最新版本吧!
好了,又学了一招,再也不用担心误删文件导致损失代码了。