KDiff3是一款跨平台文件及目录对比与合并工具,支持同时处理两个或三个文件/目录的差异分析及自动化合并。该工具最初为KDE桌面环境开发,兼容Linux、Windows和macOS等操作系统,采用Qt框架实现多平台适配。
其核心功能包括行级与字符级差异可视化显示、内置冲突解决编辑器、Unicode/UTF-8编码支持,以及三向合并能力,可自动解决版本控制中的代码冲突。支持图形界面操作与命令行模式,可通过参数配置实现非交互式自动合并,适用于持续集成场景。集成FTP/SFTP协议访问,并提供Windows资源管理器扩展、KDE Konqueror服务菜单插件等系统级整合功能。作为Git、SVN等版本控制系统的外部工具,可配置为差异对比和冲突解决的默认程序,支持目录级差异比对及补丁导出。
KDiff3是一款用来对文件或目录进行比较/合并的工具,在比较时它可以同时针对两个或者三个文件/目录而进行。该工具基于Qt框架和KDE Frameworks构建,截至2025年12月,其最新稳定版本为1.12.3。通过比较,它将文件/目录的差异按行加以显示。其核心功能包括精确到字符级别的差异比对、支持两到三个文件或目录的三向比较与自动合并、内置冲突解决编辑器,并能通过KDE KIO支持访问远程文件(如FTP、SFTP)。同时,KDiff3提供有自动化的合并工具,方便使用者进行有关合并的操作。
此外,KDiff3支持Unicode编码,集成了编辑器,可以自动合并版本控制历史。KDiff3基于Qt框架开发,但也可独立运行于其他Linux环境。该工具支持跨平台运行,兼容Windows、Linux和macOS等操作系统。KDiff3常被配置为Git、Subversion等版本控制系统的外部差异对比与合并工具,并提供Windows资源管理器与KDE Dolphin的集成支持。该软件采用 GNU 通用公共许可证(GPL)版本 2发布。
比较或合并两个或三个文本输入文件或目录。
显示行和字符(!)的差异化路线。
提供自动合并设施。
合并冲突的舒适求解的集成编辑器。
支持Unicode,UTF-8和其他编解码器,通过字节顺序标记“BOM表”自动检测。
允许访问FTP,SFTP,SMB等。
印刷的差异。
手动对齐线。
自动合并版本控制历史。
有一个直观的图形用户界面。
包括在安装Windows的资源管理器集成得分-EXT-KDiff3-外壳扩展(最初是由谢尔盖·佐林也看到内线得分)。
KDE的Konqueror的服务菜单插件。
KDiff3是一款跨平台软件,支持Linux、Windows和macOS操作系统。
其运行依赖于Qt框架和KDE Frameworks。自1.12版本起,要求Qt 5.12或更高版本以及KDE Frameworks 5.70或更高版本。
该软件提供针对多种硬件架构的预编译包,支持的架构包括amd64, arm64, i386, ppc64, riscv64等。
在Linux发行版上,可通过系统包管理器安装。
此外,项目还提供用于测试目的的Nightly构建版本,可从KDE CDN下载。
KDiff3采用差异检测算法,支持对两个或三个输入文件进行逐行和逐字符级别的比较。该工具提供自动合并功能和集成编辑器,用于解决合并冲突。
软件基于Qt框架构建图形用户界面,并依赖KDE Frameworks提供核心功能与KIO支持。KIO支持使KDiff3能够通过网络协议(如ftp、sftp、http)访问远程文件。
KDiff3支持Unicode、UTF-8等多种文本编码,并能通过字节顺序标记(BOM)自动检测编码。该工具具备目录递归比较与合并能力,并支持文件过滤。
已知的技术限制包括:二进制文件比较功能因稳定性问题曾被暂时禁用;部分网络配置下的非文件URL比较操作可能失败。
KDiff3提供命令行和图形界面两种主要使用方式,支持对两个或三个文件及目录进行比较与合并。此外,它还能作为外部工具与版本控制系统(如Git)集成,用于解决代码合并冲突。
命令行用法
KDiff3支持通过命令行参数进行非交互式自动合并。例如,比较两个文件的命令为,合并两个文件的命令为。比较三个文件的命令为,合并三个文件的命令为。
图形界面操作
KDiff3具有直观的图形用户界面。支持通过拖拽操作加载文件,以及从剪贴板比较文本片段。差异以颜色编码高亮显示,例如蓝色代表文件A,绿色代表文件B。提供导航快捷键,如F6跳转到下一个差异点,F7跳转到上一个差异点。内置的冲突解决编辑器允许用户在同一界面内直接编辑合并结果。
与版本控制系统集成
KDiff3可作为Git等版本控制系统的外部工具。在Git中,可通过将其配置为默认合并工具。需要设置可执行文件路径,例如。在发生合并冲突时,使用命令即可调用KDiff3进行图形化冲突解决。
其他便捷使用方式
KDiff3支持从文件管理器(如KDE Dolphin、Windows Explorer)通过右键上下文菜单直接调用。通过KDE的KIO支持,可以访问远程文件,例如支持ftp、sftp、http等协议。