一、安装 WinMerge
方式一:安装版(推荐新手)
- 运行安装程序:双击下载好的
WinMerge-2.16.56.2-x64-Setup.exe。 - 接受许可协议:WinMerge 依据 GNU 通用公共许可证发布,阅读后点击"下一步"。
- 选择安装位置:可保持默认路径,建议安装到非系统盘。
- 选择组件:建议勾选 Shell Extension(右键菜单集成)、全部过滤器与插件,并确认勾选简体中文语言包。
- 完成安装:创建桌面快捷方式,点击"安装",整个过程通常不超过一分钟。
方式二:便携版(免安装)
- 将
winmerge-2.16.56.2-x64-exe.zip解压到任意位置(如 D:\WinMerge)。 - 进入文件夹,双击
WinMergeU.exe即可运行("U"代表 Unicode,原生支持中文等多语言字符集)。
便携版所有配置保存在同目录的 .ini 文件中,不写入注册表,非常适合放在 U 盘里随身携带。
二、第一次文件对比
- 启动 WinMerge,点击菜单 文件 → 打开(或按
Ctrl + O)。 - 在对话框中分别选择要比较的左侧文件与右侧文件;也可以直接将两个文件拖入窗口。
- 点击"确定"开始比较:新增行以绿色标记、删除行以红色标记、修改行以黄色高亮,行内的具体字符差异会进一步加亮显示。
- 使用工具栏的"上一个差异 / 下一个差异"按钮(或快捷键
Alt + ↑ / ↓)在差异之间快速跳转。
如果两份文件只是空格或大小写不同,可在 工具 → 选项 → 比较 中勾选"忽略空白字符"或"忽略大小写",让结果聚焦真正的内容改动。
三、文件夹比较
- 在打开对话框中选择两个文件夹,WinMerge 会递归扫描全部子目录。
- 结果列表中,每个文件都会标注状态:仅左侧存在、仅右侧存在、内容不同或完全相同。
- 双击任意"内容不同"的文件,即可进入文件级的逐行对比视图。
- 使用工具栏的过滤器下拉框,可按文件类型(如仅比较
*.txt、*.xml)筛选结果,排除无关文件。
四、合并差异
- 在文件对比视图中定位到某个差异。
- 点击工具栏的"复制到右侧"或"复制到左侧"箭头按钮(快捷键
Alt + → / ←),即可将该处修改合并到另一侧。 - 合并完成后按
Ctrl + S保存。所有合并操作均可通过Ctrl + Z撤销,安全无忧。 - 需要三路合并时,在打开对话框中填写第三个文件(Base 版本),即可进行 Local / Remote / Base 三向对比与合并。
五、右键菜单快速比较
安装时勾选 Shell Extension 后,在资源管理器中:
- 右键点击第一个文件,选择"选择并比较";
- 再右键点击第二个文件,选择"与…比较",WinMerge 会自动打开并呈现差异。
六、命令行用法
WinMerge 提供完整的命令行参数,便于与脚本或版本控制系统集成:
REM 比较两个文件
WinMergeU.exe C:\old\config.ini C:\new\config.ini
REM 比较两个文件夹
WinMergeU.exe C:\project_v1 C:\project_v2
REM 以只读方式打开并忽略空白字符
WinMergeU.exe /r /wl file_a.txt file_b.txt
七、实用技巧
| 需求 | 方法 |
|---|---|
| 对比压缩包内容 | 直接选择 ZIP / 7Z 文件进行比较,WinMerge 会借助 7-Zip 自动解包 |
| 对比 Word / Excel 文档 | 安装时勾选 Office 插件,即可提取文档文本进行逐行比较 |
| 生成补丁文件 | 菜单 工具 → 生成补丁,支持 Normal / Context / Unified 三种格式 |
| 自定义高亮颜色 | 工具 → 选项 → 颜色 中调整差异配色,或加载 ColorSchemes 目录下的主题 |
| 排除特定行 | 使用行过滤器(正则表达式)忽略注释、时间戳等干扰行 |
八、常见问题(FAQ)
对比中文文件出现乱码怎么办?
WinMerge 通常会自动识别编码。如遇乱码,可在 文件 → 重新打开并指定编码 中手动选择 UTF-8 或 ANSI(GB2312)重新载入文件。
如何把 WinMerge 设置为 Git 的合并工具?
在 Git 配置中将 mergetool 指向 WinMergeU.exe 即可:执行
git config --global merge.tool winmerge,并配置对应的 cmd 路径,之后使用 git mergetool 即可调用 WinMerge 解决冲突。比较超大文件时速度较慢怎么办?
建议使用 64 位版本以获得更大的内存空间;在文件夹比较中可将比较方法设为"按大小和日期"快速模式,先筛选出可疑文件再做内容级比对。
WinMerge 支持 macOS 或 Linux 吗?
WinMerge 是专为 Windows 平台开发的软件。macOS 与 Linux 用户可考虑同类的开源方案,或在虚拟机 / 兼容层中运行 WinMerge。
夸克网盘App扫码
百度网盘App扫码