如何在 VS Code 中比较两个文件

有时编码就像解决一个复杂的难题。 有时这个难题可以归结为“找出差异”。 视觉工作室代码 (VS Code) 允许您通过几个简单的步骤优雅地比较两个文件的内容。 本指南将向您展示在 VS Code 中比较两个不同文件是多么容易。 还有一些其他有用的功能可以使编码更加方便。

在 VS Code 中比较两个文件

在比较两个文件的内容之前,必须在 Visual Studio Code 中打开这两个文件。 以下是对系统上的文件执行此操作的方法:

  1. 在 VS Code 中打开要比较的两个文件。 为此,请单击左侧资源管理器窗格中的“文件”。
  2. 右键单击要比较的第一个文件的选项卡。
  3. 从出现的右键菜单中选择 选择进行比较
  4. 右键单击屏幕右侧要查看的第二个文件的选项卡。
  5. 选择 与选定的进行比较。 看看差异。

同样,您可以比较未保存的文件和编辑器。 选择第一个编辑器并单击 选择进行比较进而 与选定的进行比较。 给第二位编辑。

比较不同的 Git 版本

比较不同的 Git 存储库版本与比较您自己计算机上的文件略有不同。 你可以这样做:

  1. 研究员 看法。
  2. 选择要在 Git 版本历史记录中搜索的文件。
  3. 单击以展开时间线视图,然后单击 查看Git文件历史记录
  4. 单击 Git 提交以查看它如何更改文件。

比较两个文件夹

您不仅限于比较 VS Code 中的文件。 以下是比较两个文件夹的内容的方法:

  1. 找到该文件并下载 差异文件夹 通过扩展控制台进行扩展。
  2. 打开这个 差异文件夹 从您的菜单中查看。
  3. 选择您要比较的文件夹。
  4. 点击 比较现在将显示内容。

认识差异

选择两个文件与 VS Code 进行比较后,差异将在编辑器中突出显示。 这样你就可以快速看到代码中发生了什么变化。 使用工具栏中的箭头浏览更改。 此时,您可以分析更改、排除故障并确定保留或丢弃哪些更改。

合并更改

如果您想将一个文件中的更改合并到另一个文件中,有一种简单的方法可以做到这一点。 您所需要做的就是在工具栏上找到合并图标,然后单击它来合并两个文件。

差异查看器解释

Visual Studio Code 中隐藏着一个功能强大的差异查看器,允许用户比较同一文件的两个版本或两个完全不同的文件。 该工具不仅仅用于并排查看某些内容 – 它可以通过方便的突出显示轻松地快速查看发生的变化。

当从文件中删除某些内容时,它的左侧会出现亮红色背景,右侧会出现有角度的图案。 如果第二个文件包含添加内容(无论您选择较新还是较旧的文件作为第二个文件),请在左侧查找倾斜图案,在右侧查找粗体绿色背景。 如果仅更改了线条的一部分,它们将具有明亮的红色和绿色背景,因此您不会错过更改的位置。 这样您就可以快速看到差异并决定您喜欢哪些更改。

编程语言感知差异

Visual Studio Code 的 diff 查看器使用有效的逐行方法来比较文件并突出显示更改的字符。 如果您曾经使用过 Notepad++ 及其比较插件等工具,那么这是一种听起来很熟悉的最佳实践。 然而,允许可选分号或换行符的编程语言可能会给这个系统带来问题,因为差异变得相当大,并且琐碎的编辑会堵塞屏幕。

为了解决这个问题,有一个名为 SemanticDiff 的扩展,它不仅仅是比较文本,还分析文件的代码并评估其编译器表示。 这使您可以看到不影响程序的小更改,而是直接识别移动的代码,同时更清楚地了解差异中重要的内容。 这就像拥有一位熟练的编辑器,了解编程语言的复杂性。 它过滤掉不重要的方面,并在代码编译后进行真正产生影响的调整。

如果您想更深入地了解代码更改,请从 VS Code Marketplace 安装 SemanticDiff 并切换到 Smart Diff 模式,以更详细地查看代码中的差异。

搜索和替换

除了比较之外,在文件中或跨多个文件搜索特定文本是您可能经常执行的另一项任务。 VS Code 的搜索和替换功能非常强大,并且具有多个高级选项:

  • 按 Ctrl+F 在编辑器中打开搜索小部件并在当前文件中搜索。 您可以浏览结果,甚至可以从选择中选择搜索字符串。
  • 通过单击搜索小部件中的三行图标(汉堡包)或将“editor.find.autoFindInSelection”设置为“始终”或“多行”,对所选文本执行搜索操作。
  • 您可以解析“查找”输入框中的文本来搜索多行文本。 您还可以更改搜索小部件的大小。
  • 按 Ctrl+Shift+F 搜索当前打开的文件夹中的所有文件。 您可以使用高级搜索选项和全局模式语法。
  • 高级搜索和替换选项包括区分大小写、匹配全字、正则表达式和保留大小写。

跨文件搜索

如果您正在项目中的多个文件中寻找特定的内容,那么 VS Code 适合您。 使用Ctrl+Shift+F快速浏览当前文件夹中的所有文件。 结果被分成包含查询的文件。 您还可以发挥创意并使用正则表达式搜索来获得更具体的结果。

文件比较与其他功能的集成

VS Code 中 diff 工具的强大功能不仅仅限于文件比较。 它开启了许多内置编码的可能性。 通过统一自动保存、热退出和高级搜索等功能,您可以无缝处理项目、比较不同的文件版本以及跨多个文件搜索特定功能。

此外,您可以完全放心地修改配置文件,您的更改将持续存在。 当应用程序关闭时,您不必担心未保存的更改。 热的 Exit 记得他们所有人。 所有这些功能一起使您可以完全控制所有文件版本和更改。

比较与小心

有些编码任务看起来比其他任务更容易、更乏味,比较两个文件就是其中之一。 但 VS Code 的 diff 工具和用于比较不同数据类型的方法使其变得更容易、更愉快。 高度可见的突出显示可引导您完成两个文件之间的任何更改,并允许您尝试不同版本的代码,这一切都非常适合调试、分析和版本控制。

您的项目是否需要严格的版本控制和频繁的文件比较? 您对代码比较方法有什么提示或技巧吗? 在下面的评论中分享您的想法和见解。