首页/软件/KDiff3

KDiff3:开源的文件与目录比较、三方合并工具 #

KDiff3 是什么? #

KDiff3 是一款开源、跨平台的文件与目录比较及三方合并(3-Way Merge)工具,由 KDE 社区生态发展而来,基于 Qt 构建,可在 Windows、macOS 与 Linux 上运行。

它的核心用途是回答两个问题:两份文件(或两个文件夹)到底哪里不一样?三份文件(基准版本 + 两个修改版本)该如何合并成一份?KDiff3 会用颜色把差异逐行、逐字符标出来,自动完成可以自动合并的部分,并把无法判断的冲突集中呈现,交由用户逐处确认。对于经常处理代码合并冲突、配置文件比对、文档版本核对的开发者与运维人员来说,它能把“来回切换窗口、肉眼找不同”的低效流程,变成一次清晰的对照与点击。

软件以开源协议发布,全部功能免费,无需账号、不依赖云端,文件始终在本地处理。

KDiff3 有哪些亮点特色? #

  • 三方合并(3-Way Merge):同时载入基准文件与两个修改版本,自动合并互不冲突的改动,并把真正的冲突单独标出,让合并从“反复对照”变成“逐处确认”。
  • 行级 + 字符级差异高亮:不仅指出哪一行不同,还能精确到行内哪个字发生了变化,并用不同配色区分 A、B、C 三份输入,差异一眼可见。
  • 目录递归比较与同步:可直接比较两个或三个文件夹,递归列出新增、删除、修改的文件,并支持把差异文件复制到目标目录,相当于一个轻量的目录同步器。
  • 内置编辑器,边看边改:合并输出窗口本身可编辑,发现自动合并结果不理想时,可直接就地修改后保存,无需切换到其他编辑器再回来。
  • 自动合并 + 冲突导航:提供自动合并、合并当前差异、跳转到下一处冲突等操作,配合快捷键可以快速处理上百处差异,而不是靠手动滚动查找。
  • 版本控制友好:可配置为 Git、SVN 等版本控制工具的 diff / merge 前端,命令行调用方式简单,便于集成到脚本、IDE 或提交前检查流程中。
  • 跨平台一致的体验:基于 Qt 构建,Windows、macOS、Linux 上的界面布局与操作逻辑基本一致,使用习惯与配置可平滑迁移。
  • 开源免费、无功能限制:以 GPL 系开源协议发布,源码公开可审计,不限制文件数量与功能模块,也不要求联网或上传任何内容。

KDiff3 官网首页截图

免费下载 KDiff3 #

以下为官方提供的各平台安装包,点击链接即可下载。列表中的版本号为 0.9.98;官网是否有更新的版本,官网未说明,建议下载前留意官方 SourceForge 页面。

文件名 描述 大小 下载
KDiff3-0.9.98.zip 压缩包(免安装 / 多平台归档) 10.6 MB 夸克网盘
KDiff3-32bit-Setup_0.9.98-3.exe Windows 32 位安装程序 10.9 MB 夸克网盘
KDiff3-64bit-Setup_0.9.98-2.exe Windows 64 位安装程序 11.0 MB 夸克网盘
kdiff3-0.9.98-MacOSX-64Bit.dmg macOS 64 位磁盘映像 9.8 MB 夸克网盘

提示:Windows 用户请根据系统位数选择 32 位或 64 位安装包;macOS 用户下载 .dmg 后拖入“应用程序”即可;Linux 用户推荐通过发行版仓库安装,详见下方安装章节。

KDiff3 如何使用? #

KDiff3 的界面围绕“输入文件区 + 差异显示区”展开,上手只需几步。

  1. 启动并选择文件。打开 KDiff3 后,在顶部两个(或三个)文件槽中选择要比较的文件或文件夹,也可以通过菜单 文件 → 打开,或直接把文件拖进窗口。
  2. 查看差异。比较结果会用颜色标记:不同的行、被删除的行、被新增的行分别使用不同底色,行内变化则用更细的高亮标出。使用工具栏上的“上一处差异 / 下一处差异”按钮或对应快捷键,可以逐处跳转,不必手动滚动。
  3. 处理合并(三方模式)。选择三个文件时,通常 A、B 是两个待合并的版本,C 是基准版本;下方或右侧的输出窗口显示合并结果。你需要先确认“输出”对应哪一个文件,再使用“自动合并”按钮完成可自动处理的改动,剩余的冲突行会保留标记,由你手动选择采用 A 还是 B。
  4. 编辑并保存。输出窗口本身可以编辑,冲突解决完成后点击保存即可写回目标文件;也可以在保存时另存为新文件,避免覆盖原始版本。
  5. 比较目录。选择两个文件夹后,KDiff3 会递归列出每个文件的差异状态(新增、删除、修改),双击某个文件可直接打开文件级比较;对差异文件使用右键或菜单中的复制操作,即可把选中文件同步到目标目录。

如果习惯命令行,可以在终端中直接调用,例如:kdiff3 文件A 文件B 进行两文件比较,kdiff3 文件A 基准文件 文件B -o 输出文件 进行三方合并并指定输出。若要把 KDiff3 设为 Git 的合并工具,可在 Git 配置中将合并/差异工具指向 kdiff3,之后执行合并冲突处理时即可由它接管(具体配置项随 Git 版本略有差异)。

KDiff3 的常见问题? #

KDiff3 是免费的吗?有付费版吗? 是免费的开源软件,基于 GPL 系协议发布,功能完整、无内购、无广告,也不存在需要付费解锁的模块。

KDiff3 支持哪些操作系统? 主要支持 Windows、macOS 和 Linux,源码可自行编译适配类 Unix 系统。官网未说明是否提供 Android、iOS 等移动端版本。

能不能用 KDiff3 处理 Git 的合并冲突? 可以。KDiff3 常被配置为 Git 的合并工具(mergetool)和差异工具(difftool),冲突时它会以三方合并的方式展示“本地版本 / 基准版本 / 远程版本”,方便逐处取舍。

比较中文或其他编码的文件出现乱码怎么办? KDiff3 支持 Unicode 与多种字符编码,出现乱码通常是编码识别不一致导致的。可在打开文件或设置中手动指定编码/区域设置后重新加载比较。

三个文件的比较和两个文件的比较有什么区别? 两个文件是比较(diff),三个文件是合并(merge):三个文件中通常有一个是共同基准,KDiff3 会据此判断每处改动来自哪一方,并输出合并结果。

比较结果里“自动合并”后还有冲突标记,是出错了吗? 不是。当同一位置被两方以不同方式修改时,程序无法自动判断应以哪一方为准,只能保留冲突交给人工决定。逐个选择采用 A 或 B,或直接编辑结果行即可解决。

KDiff3 如何安装? #

Windows #

  1. 根据系统位数下载 KDiff3-64bit-Setup_0.9.98-2.exe 或 KDiff3-32bit-Setup_0.9.98-3.exe。
  2. 双击运行安装程序,按向导选择安装目录与是否创建开始菜单/桌面快捷方式。
  3. 安装完成后从开始菜单启动 KDiff3 即可。
  4. 如果下载的是 KDiff3-0.9.98.zip,解压到任意目录后直接运行其中的可执行文件,即为免安装使用方式(具体可执行文件位置以压缩包内实际结构为准)。

macOS #

  1. 下载 kdiff3-0.9.98-MacOSX-64Bit.dmg。
  2. 双击打开磁盘映像,把 KDiff3 图标拖入“应用程序”文件夹。
  3. 首次启动若提示“无法验证开发者”,可在“访达”中右键点击应用选择“打开”,或在“系统设置 → 隐私与安全性”中允许运行。
  4. 若使用 Homebrew,也可尝试通过包管理器安装社区维护的版本(版本号可能与官网发布的不一致)。

Linux #

  1. 优先使用发行版仓库安装,例如 Debian/Ubuntu 系可执行 sudo apt install kdiff3,Fedora 系使用 sudo dnf install kdiff3,Arch 系使用 sudo pacman -S kdiff3。
  2. 也可以安装 KDE 生态提供的 Flatpak / Snap 版本(是否提供以对应商店页面为准)。
  3. 如需最新特性,可下载源码后使用 CMake 与 Qt 开发环境自行编译安装。

KDiff3 如何卸载? #

Windows #

  1. 打开“设置 → 应用”或“控制面板 → 程序和功能”。
  2. 在列表中找到 KDiff3,选择“卸载”并按提示确认。
  3. 如曾使用免安装的 ZIP 版本,直接删除解压目录即可。
  4. 如需彻底清理,可手动删除用户目录下的 KDiff3 配置文件(通常为 kdiff3rc 之类的配置文件),具体路径因版本而异,官网未说明固定位置。

macOS #

  1. 打开“应用程序”文件夹,将 KDiff3 拖入废纸篓并清空。
  2. 如需清理残留配置,可在用户资源库中删除与 KDiff3 相关的偏好配置文件(名称与路径以实际安装版本为准)。

Linux #

  1. 使用对应包管理器卸载,例如 sudo apt remove --purge kdiff3、sudo dnf remove kdiff3 或 sudo pacman -Rns kdiff3。
  2. 若通过 Flatpak / Snap 安装,使用对应的卸载命令(如 flatpak uninstall 或 snap remove)。
  3. 用户级配置一般保留在个人配置目录中,如希望完全恢复初始状态,可手动删除 KDiff3 的配置文件(通常为 ~/.config/kdiff3rc 一类路径,具体以实际版本为准)。
相关标签
KDiff3文件比较工具目录比较三方合并差异对比工具代码合并Git 合并工具开源免费跨平台文本对比