比较文件、文件夹与文本源
GoLand 可让您查看文件、文件夹、本地文件与其版本库版本、数据库对象以及文本源之间的差异。
比较文件
比较两个或三个文件
在 项目 工具窗口 Alt+1 中,选择要比较的文件,然后选择 ,或按 Ctrl+D。
或者,选择一个文件,从其上下文菜单中选择 比较对象… ,然后选择项目外部的文件。
将活动编辑器与剪贴板进行比较
右键单击编辑器中的任意位置,然后从上下文菜单中选择 与剪贴板比较(B)。
将活动编辑器与项目文件进行比较
在 项目 工具窗口 Alt+1 中,右键单击要与当前打开文件比较的文件。
从上下文菜单中选择 与编辑器比较文件(M)。
将活动编辑器与任意文件进行比较
如果您经常需要将项目外部的文件与活动编辑器进行比较,或不希望打开 项目 工具窗口 Alt+1 ,可以使用 与编辑器比较文件(M) 操作选择任意文件并与活动编辑器进行比较。
要将此操作添加至编辑器标签的上下文菜单:
按 Ctrl+Alt+S 打开设置,然后选择 。
在右侧面板中展开 编辑器标签页弹出窗口菜单 节点,选择要添加新操作的位置,点击
并选择 添加操作(A)…。
在 与编辑器比较文件(M) 下查找并添加 操作。
将本地文件与其版本库版本进行比较
打开 提交 工具窗口 Alt+0。
在变更列表中定位所需文件并执行以下操作之一:
右键点击该文件并选择 。
选择该文件并按 Ctrl+D。
双击该文件。
GoLand 会在 文件 Diff 查看器 中显示差异:

颜色 | 描述 |
|---|---|
| 已添加 |
| 已修改 |
| 已删除 |
要应用更改,请使用尖角按钮: 和
。
要追加更改,请按 Ctrl —
按钮将变为
。
实用技巧
- 为“接受”和“追加”分配快捷键
要为 接受 和 追加 操作分配快捷键,请打开 键位映射 设置页面 Ctrl+Alt+S ,然后在 版本控制系统 | 差异与合并 下找到这些操作。
- 左右互换
当您比较两个文件或文件与剪贴板内容时,可以点击工具栏上的
来切换左右两侧。
- 通过命令行比较文件
您可以通过命令行比较两个或三个文件,并将 GoLand 作为外部差异工具使用。 有关详细信息,请参见 从命令行比较文件。
比较文件夹
GoLand 允许您根据文件大小、内容或时间戳比较两个文件夹中的文件。 差异显示在 文件夹差异查看器 中:
上部窗格列出所选文件夹中的所有文件,而下部窗格显示所选文件的两个版本之间的差异(请参见 比较文件)。
比较文件夹
在 项目 工具窗口中选择要比较的文件夹 Alt+1。
在上下文菜单中选择 比较目录 ,或按 Ctrl+D。
使用以下工具栏按钮筛选列表:
:单击可显示左侧文件夹中存在但右侧文件夹中缺失的文件。
:单击可显示右侧文件夹中存在但左侧文件夹中缺失的文件。
:单击可显示两个文件夹中都存在但内容、时间戳或大小不同的文件。
:单击可显示两个文件夹中都存在且在 比较方式 下拉列表中所选选项下相同的文件。
在搜索字段中使用文本过滤器以将文件包含或排除在列表中:
如需包含文件,请输入匹配模式。 例如,
.txt会验证所有以.txt结尾的路径。如需排除文件,请在模式前添加
!。 例如,!build/*会排除所有位于 build 目录中的文件。使用
&(AND)与|(OR)组合多个过滤器。 例如,*.txt|.xml&!build/*会验证所有以.txt或.xml结尾且不位于 build 目录中的路径。
同步文件夹
GoLand 允许您同步两个文件夹的内容,或将一个文件夹中的更改应用到另一个文件夹。
对于每个文件,单击 * 列中的图标,直至设置将在该文件上执行的操作。
:将所选项目从左侧复制到右侧文件夹。 如右侧文件夹中已存在该文件,则会将其覆盖。
:将所选项目从右侧复制到左侧文件夹。 如左侧文件夹中已存在该文件,则会将其覆盖。
:不执行任何操作(两个文件相同)。
:不执行任何操作(两个文件不同)。
:删除所选项目。
请执行以下任一操作:
如需对当前项目应用所选操作,请单击工具栏上的 同步所选项 按钮
或按 Enter。
如需对所有项目应用所选操作,请单击工具栏上的 全部同步 按钮
。
比较两个文件夹中的不同文件
有时,一个文件可能存在于一个文件夹中,而另一个名称相似的文件则存在于另一个文件夹中(例如, VCS_library_1.4 和 VCS_library_1.5 )。 这些可能是您希望进行比较的同一文件的不同版本。 还可能出现这样的情况:您认为某个文件已被重命名,但其实它与另一个文件夹中的文件完全相同。 GoLand 允许您比较两个文件,其中一个文件存在于右侧文件夹中,另一个文件存在于左侧文件夹,尽管这些文件被视为不同的实体。
在左侧和右侧窗格中选择要比较的文件。
单击工具栏上的 相互比较新文件 图标
。 所选文件之间的差异将显示在底部窗格中。
比较任意文本源
除了比较文件或文件夹的内容,您还可以打开一个空的 Diff Viewer ,并将任意文本粘贴或将文件拖入左右两侧面板以进行比较。 例如,当您希望将应用程序的控制台输出与对该应用略作修改后的版本的输出进行比较时,这会非常有用。
按下 Ctrl+Shift+A 并开始输入,以查找 打开空白差异窗口 操作。
将要比较的任意文本粘贴到左右两个面板中。
右键单击左侧或右侧面板,选择 切换到三向查看器 以比较任意三份文本来源。
实用技巧
- 为“打开空白差异”操作分配快捷键
在 键位映射 设置页 Ctrl+Alt+S 中,于 版本控制系统 | 差异与合并 下找到该操作。
- 左右互换
在 差异查看器 中,您可以通过单击工具栏上的
图标来交换两侧内容。
- 在单独窗口中打开 Diff
默认情况下, 差异查看器 在编辑器选项卡中打开。 您可以配置设置,将查看器改为在单独的窗口中打开。 在 高级设置 设置页面 Ctrl+Alt+S 中,禁用 作为编辑器标签页打开差异 选项。
使用外部差异工具进行比较
您可以设置并启动外部 diff 工具,直接在 GoLand 中比较文件和更改。 请确保已在计算机上预先安装所需的 diff 工具。
配置外部差异工具
按 Ctrl+Alt+S 打开设置,然后选择 。
选择 启用外部工具 选项。

在 配置外部工具 部分,单击
。
在打开的 添加外部工具 对话框中,填写以下详细信息:
工具组 :从列表中选择 Diff tool。
程序路径 :指定系统中 diff 工具可执行文件的路径。
实参模式 :如有必要,调整显示更改的模式,其中:
%1 - 本地更改
%2 - 来自远程服务器的内容
%3 - 无本地更改的当前版本

单击 测试差异 或 测试三向差异 以检查是否可以从 GoLand 成功启动外部 diff 工具。
单击 确定 以保存更改。
从 GoLand 启动外部差异工具
在 Diff Viewer 中查看差异时,单击
以让 GoLand 启动已配置的外部 diff 工具。
