这个工具做什么
文本对比(diff)把两段文本按行对齐,标出哪些行被删除、哪些行被新增、哪些行原样保留——适用于审阅配置改动、核对两份代码/日志/JSON 的差异,或确认一次复制粘贴有没有出错。
输出是标准 unified diff 格式(就是 git diff 那种 +/- 行),可以直接贴进代码评审、工单或文档。整个过程在浏览器内完成,文本不上传。
如何使用
- 粘贴两段文本 左栏是改动前(A),右栏是改动后(B)。顺序反了点「交换」即可。
- 按需调整参数 「上下文行数」决定每处差异前后带多少行原文,方便看懂位置;比较大小写无关的内容(如配置键名)可打开「忽略大小写」。
- 复制或下载结果 结果可直接复制为纯文本,也可下载 .txt 文件。带 +/- 前缀的行就是差异所在。
常见问题
和 git diff 一样吗?
格式一致(unified diff),但本工具不依赖仓库,也不做 git 的移动检测等启发式;适合临时对比两段任意文本。
空行差异会被忽略吗?
不会。空行也是行,增删空行会如实标出;「忽略大小写」只影响字母大小写,不影响空白。
最多能对比多大的文本?
单侧最大 10MB、3000 行。LCS 算法的内存随行数平方增长,这是保证页面不卡的安全边界。
能对比两个文件吗?
把文件内容粘贴进两栏即可(.txt/.md/.json/.csv/.log 都是文本)。二进制文件会被拒绝并提示。
结果可以直接打 patch 吗?
格式与 patch 工具兼容,但文件名是 left.txt/right.txt 这样的占位名;要真正打补丁需要在 git 中操作。
文本会被上传吗?
不会。对比在浏览器 Worker 内完成,内容不出设备。
限制与边界
单侧最大 10MB、3000 行;更大的文本请先截取相关段落。
只做行级对比:不做字符级 / 词级 diff,不做 side-by-side 双栏渲染。
含 NUL 字节的二进制内容会被拒绝;输出为 unified diff 文本,不渲染 HTML。