专业对比两段文本或代码的差异,高亮显示增删改内容,辅助代码审查、文档合并与版本管理。
工具用的顺手吗?
你的反馈能帮助我们做得更好
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
左侧粘贴旧版 const count = 3;,右侧改成 const quantity = 3;,结果区会把对应行并排放置,并进一步标出发生变化的字符。左栏代表原始版本,右栏代表修改版本;两侧各自保留行号,删除内容与新增内容用不同的背景和标记区分。它比较的是两段文本的内容,不会执行代码,也不会判断修改后的程序能否编译或运行。
输入框里的内容发生变化后,结果会随之重新计算,不需要再点击“对比”按钮。没有差异的相邻行作为上下文保留,距离变更较远的相同行可能被折叠,使视线集中到改动区域。
结果先按换行位置组织两段文本,识别保留、删除和新增的行。若旧版的一行与新版的一行位于同一处修改中,两行会左右配对;随后再比较行内字符,把变量名、数字、标点或空格的细小改动单独强调。因此,替换一行通常不是一个抽象的“修改”标签,而是左侧旧行与右侧新行同时出现。
这种显示方式适合回答“哪几行变了”和“这一行具体改了什么”。它不是语法树比较:变量改名、调整缩进、改变大小写或更换全角与半角标点,都会按文本变化呈现;逻辑等价但写法不同的代码也仍会显示差异。
默认选项是 Plain Text,也可选择 JSON、JavaScript、TypeScript、HTML、CSS、Python、Java、C、C++、C#、Go、SQL、Bash、Markdown、XML、YAML、Dockerfile、Rust、Ruby 和 INI。选择语言后,左右输入区会按相应语法给关键字、字符串或标记着色,便于检查粘贴内容。
语言选择不会改变差异算法,也不会校验语法。把 JSON 选成 Python,比较出的字符变化仍然相同;它只会改变输入区的阅读效果。结果区强调的是增删字符和行,而不是重新进行一遍语言语法着色。
指南
按步骤完成操作,并通过示例核对输入与结果。
先确定比较方向:旧版本放左侧“原始代码”,目标版本放右侧“修改后代码”。若内容来自格式化文档,先复制为纯文本,避免把不可见样式误当成内容。
可以先填任意一侧,再补另一侧。每次输入都会触发重新比较,页面没有额外的提交按钮。若左右放反,新增与删除的方向也会随之反转。
代码可选对应语言,普通文案或不确定格式可保留 Plain Text。这个选择服务于输入阅读,不是得到差异结果的前置条件。
先看两侧行号和整行背景,判断是新增、删除还是成对替换;再看行内强调,定位变量名、数值、符号或空格的具体变化。较长文本可沿结果区逐段复核。
可把下面两段内容分别放入左右输入区:
左侧原始版本
const price = 12;
const count = 3;
const total = price * count;右侧修改版本
const price = 12;
const quantity = 3;
const total = price * quantity;
console.log(total);结果中,第 1 行保持一致;第 2、3 行左右成对出现,count 与 quantity 的字符差异被进一步强调;右侧第 4 行单独显示为新增。这个例子同时覆盖不变行、行内替换和新增行,适合确认自己对标记方向的理解。
场景
查看这项工具在不同工作与生活流程中的用法。
同事发来修改前后的函数,但内容尚未进入版本库时,把两版分别粘贴即可定位参数名、条件分支和返回值的变化。审查者可据此列出需要继续讨论的行。
发布前对照旧、新配置,重点查看端口、域名、开关值、白名单条目和缩进是否被改动。结果中的行内强调适合发现只差一个字符的值。
编辑可比较两版说明、Markdown、SQL 或 JSON 文本,确认新增段落、删除句子和标点调整。若格式化顺序发生大范围变化,先统一排版再比对会更容易阅读。
问答
集中解答高频疑问与容易混淆的问题。
因为替换由“旧内容被移除”和“新内容被加入”共同表达。左侧保留修改前的行,右侧显示修改后的行,行内强调再指出两者具体不同的字符。
不会。语言选项改变左右输入区的语法着色,文本比较仍按实际字符与换行进行;同样的两段输入会得到同样的增删结果。
先用整行背景判断改动方向,再看行内小块定位最小变化。只有右侧有内容通常表示新增,只有左侧有内容通常表示删除,两侧都有内容则多为成对替换。
不是。当前页面只比较手动输入的两段文本,不读取版本库、提交记录、暂存区或文件路径,也不生成可直接应用的补丁。Git 官方文档描述的对象范围更广,适合正式版本历史和提交审查。
须知
使用前了解适用范围、结果限制与必要提醒。
输入形式:当前功能面向键入或粘贴的纯文本,不提供文件上传、目录比较、二进制文件解析、自动合并、补丁应用或结果下载。富文本的字体、颜色、批注和修订记录不会作为格式保留。
比较规则:页面没有“忽略空白”或“忽略大小写”开关。行内空格、制表符、字母大小写、全角与半角符号都可能形成差异;若结果看似异常,先统一缩进、换行和格式化风格,再重新粘贴。
内容规模:没有承诺固定的行数或字符上限。比较工作和结果渲染会占用当前设备的内存与处理时间,超长单行或大段文本可能造成滚动、输入或显示变慢,可拆成较小片段逐段核对。
敏感信息:两段文本在当前浏览器页面内完成差异计算,输入内容不会作为对比请求正文提交;但浏览器扩展、剪贴板、共享设备和本机环境不属于页面可控制范围。未公开源码、访问令牌、私钥、密码和生产配置仍应先脱敏。
结果用途:视觉差异不能证明代码语义正确,也不能替代编译、测试、静态检查、合并冲突处理或正式代码审查。关键变更应回到版本控制记录和测试结果中复核。
推荐
查找相关工具、专题与可用的 API 能力。