TIP

代码/文本逐行对比,免费在线Diff工具

2026.02.18 · 阅读 7 分钟
更新于 2026.03.23

改了一段代码不确定哪里不同?配置文件更新后想看看改了什么?两份文案改了几个字要确认?这些都是"逐行文本对比"的经典场景。

Git 有 diff,但不是每个人都用 Git,而且 Git diff 在终端里的输出不太直观。在线 diff 工具很多,但大部分界面杂乱、广告一堆、还要注册。Diff Tool 做一件事:干净地对比两段文本,逐行标出差异。

三种差异一目了然

对比结果用颜色区分三种情况:

DEL
删除行 — 左边有、右边没有。红色标记,文字加删除线
ADD
新增行 — 左边没有、右边新加的。绿色标记
MOD
修改行 — 同一行内容变了。左右对照显示,变化的字词高亮

相同的行自动折叠收起,只显示差异部分和上下文。点击折叠条可以展开查看完整内容。这种设计让你能快速聚焦于"到底改了什么",而不是在几百行相同的代码中翻找。

Diff 算法:它是怎么工作的

Diff Tool 底层使用的是 Myers diff 算法的变体——这也是 Git diff 使用的核心算法。它的工作原理是找到两段文本之间的"最长公共子序列"(LCS),然后把不在公共子序列中的部分标记为"新增"或"删除"。

对于修改行(一行中只有部分内容变化),工具会进一步做字符级别的对比——精确高亮到具体改了哪几个字。比如 listen 80; 变成 listen 443 ssl;,会精确标出 80 被改成了 443 ssl,而不是把整行都标红标绿。

实操:对比两个版本的配置文件

◆ 典型情况

服务器的 nginx.conf 改了一版,你想确认到底改了哪些配置项,有没有误改其他地方。

打开 Diff Tool,选 ◆ 文本对比 标签页
左边粘贴旧版配置,右边粘贴新版配置
COMPARE 对比
结果左右分栏显示差异行,相同行自动折叠。鼠标点击折叠条可展开上下文

▼ 工具界面:文本对比 — Nginx 配置对比结果

nmwks.com/diff-tool — 文本对比结果
#旧版 (A)#新版 (B)
⊟ 第1~8行 相同
9 listen 80; 9 listen 443 ssl;
⊟ 第10~14行 相同
15 ssl_certificate /etc/ssl/cert.pem;

适用场景详解

场景左边粘贴右边粘贴关注点
合同修改审查原版合同文本修改后的合同文本条款措辞是否被悄悄改了
代码 Code Reviewmaster 分支代码PR 中的新代码逻辑变更、新增函数、删除代码
配置文件变更线上配置本地修改后的配置确认只改了目标项,没有误改
翻译校对初译稿终审稿修改了哪些表述
文案确认甲方原文乙方修改稿哪些地方被改动了
SQL 语句对比旧版查询优化后的查询WHERE条件、JOIN方式的变化
API 响应对比预期响应 JSON实际响应 JSON哪些字段值不一致

对比技巧

先排版再对比

如果两段文本的缩进风格不一样(比如一个用 Tab,一个用空格),diff 会把每一行都标为"不同"。建议对比前先统一格式。对于 JSON,可以先用 JSON 格式化工具 把两段 JSON 都格式化一遍,再粘贴对比。

忽略空白差异

有些差异只是行尾多了个空格或换行符不同(Windows 的 CRLF vs Linux 的 LF)。如果你只关心实际内容的变化,可以在对比前手动去掉尾部空格。大部分内容差异不涉及空白问题,但配置文件和 YAML 文件要特别注意缩进。

大文件对比

Diff Tool 基于浏览器运行,对于几千行的文本对比完全没问题。如果文本超过 1 万行,处理时间可能需要几秒。超过 10 万行建议使用桌面工具(如 Beyond Compare、WinMerge)。

表格数据也能对比

如果你要对比的是表格数据(两个 Excel 报价单、两个 CSV 文件),切到 ◆ 表格对比 标签页。支持直接从 Excel 复制粘贴,逐格标出差异单元格。详见 《两个Word文档怎么快速找出改了哪里?》

跟其他对比方案的区别

方案优点缺点
Git diff集成在版本管理中需要 Git 环境,终端输出不直观
VS Code diff语法高亮,集成编辑需要安装 VS Code,非开发者不熟悉
Beyond Compare功能最强大收费软件,需要安装
在线 diff 网站无需安装广告多,部分要注册,文件可能上传
Diff Tool无需安装、无广告、本地处理不支持目录对比

常见问题

中文对比支持吗?

完全支持。Diff Tool 基于 Unicode 处理文本,中文、日文、韩文、emoji 都没问题。字符级高亮对中文同样有效——能精确标出一句话中改了哪几个字。

对比结果能导出吗?

目前对比结果展示在页面上,可以截图保存。如果需要分享对比结果,建议截图或复制关键差异行。

ESC