如何在 VisualStudio 代码中查看本地历史记录更改?

我正在寻找一种方式,看到我的本地历史的变化。

有点像 网络风暴中的等价方式:

Enter image description here

277076 次浏览

VisualStudio 代码现在在时间轴视图中提供了这一点。

或者,如果你想要一个插件提供类似的功能,例如:

检查站

或者更有名的:

本地历史

可能需要配置一些详细信息,因为 VisualStudio 代码搜索有时会因为此类插件创建的附加文件夹而变得混乱。要解决这个问题,你可以:

  1. 将历史记录文件夹添加到 .gitignore文件中。
  2. 更改所选插件中的历史文件夹位置 配置。
  3. 配置 VisualStudio 代码搜索以忽略历史记录文件夹。

我构建了一个名为 检查站的扩展,它是 本地历史的替代品。检查点支持查看树视图中所有文件(包含检查点)的历史记录,而不仅仅是当前活动的文件。还有一些其他的细微差别,但总的来说它们是相当相似的。

基本功能

  • 自动保存的本地编辑历史可以通过 本地历史扩展获得。
  • 通过 检查站扩展可以手动保存本地编辑历史记录(这是 IntelliJ 等效于向本地历史记录添加标记)。

高级功能

  • 当文件被移动或重命名时,上面提到的扩展都不支持编辑历史记录。
  • 上面的扩展只支持编辑历史记录,它们不支持移动/删除历史记录,例如,像 IntelliJ 那样。

公开请求

如果您希望看到这个特性与所有高级功能一起原生添加,我建议使用 在这里讨论开放的 GitHub 问题

VisualStudio 代码中没有查看文件历史记录的选项。如果使用 Git,则可以使用 VisualStudio 代码扩展 基特历史查看每次提交后的文件更改,并与以前的提交进行比较。

本地文件历史记录

文件的本地历史记录现在可以从 Timeline 视图中获得。 根据配置的设置,每次保存编辑器时,都会有一个 新条目被添加到列表中:

每个本地历史条目包含创建条目时文件的完整内容,在某些情况下可以提供更多的语义信息(例如指示重构)。

从一个条目你可以:

将更改与本地文件或以前的条目进行比较 内容删除或重命名条目

https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_66.md#local-history

本地文件历史正在积极工作,并在内部人员的建设版本1.66。结果将在 Timeline视图中显示。

以下是目前适用的设置:

Workbench > Local History: Enabled

控制是否启用本地文件历史记录 保存的编辑器的文件内容将存储到备份中 位置,并且可以在以后恢复或检查。更改此设置 对现有文件历史记录条目没有影响。

Workbench > Local History: Max File Entries

控制每个文件的本地文件历史记录项的最大数量。 当本地文件历史记录条目的数目超过 一个文件,最早的条目将被丢弃。

Workbench > Local History: Max File Size

控制要为本地考虑的文件的最大大小(以 KB 为单位) 较大的文件将不会添加到本地历史记录中 除非通过用户手势明确添加。更改此设置有 对现有文件历史记录条目没有影响。

local history settings

这些命令:

timeline.toggleExcludeSource:timeline.localHistory


workbench.action.localHistory.compareWithFile
workbench.action.localHistory.compareWithPrevious
workbench.action.localHistory.selectForCompare     // compare any 2 entries
workbench.action.localHistory.compareWithSelected


workbench.action.localHistory.delete               // delete this entry
workbench.action.localHistory.deleteAll            // delete all entries of all files from local history


workbench.action.localHistory.open
workbench.action.localHistory.restore
workbench.action.localHistory.restoreViaEditor
workbench.action.localHistory.rename               // rename this entry

新的全球指挥部已经加入到与当地历史相关的工作中:

workbench.action.localHistory.create: 使用自定义名称为活动文件创建一个新的历史记录条目

workbench.action.localHistory.deleteAll: 删除所有文件中的所有历史条目

workbench.action.localHistory.restoreViaPicker: 找到一个跨所有文件还原的历史条目

一些新的设置已经被引入到本地设置中 历史:

启用或禁用本地历史记录 (默认值为 true) workbench.localHistory.maxFileSize: 一个 文件大小以创建本地历史记录条目(默认值: 256kb)
当地历史的界限 每个文件的条目(默认值: 50)
返回文章页面 从本地历史中排除某些文件的通用模式
以秒为单位的时间间隔 本地文件历史记录中的最后一项被替换为 正在添加(默认为10)

Timeline local history commands menu

很简单,只要打开一个文件并检查 timeline选项卡

enter image description here

右键单击该文件并选择“显示历史记录”。 有一天我丢失了我的 Git 更改,因为我点击了 Git 的图形撤消选项。 这个选项拯救了我,因此我可以得到我的代码。