01
1. 什么是Diff(差异)比较
Diff是查找两段文本(或文件)之间差异的过程,广泛应用于代码审查、文档版本比较、配置文件变更核查、翻译校对等场景。通常按行比较,区分哪些行被新增、删除或修改内容。Git的git diff以及各种代码编辑器的对比功能都基于这一原理。该工具不会将文本发送到服务器,全部在浏览器中即时完成比较,因此即使是敏感的代码或文档也能安全查看。
将两段文本并排逐行比较。新增的行以绿色高亮,删除的行以红色高亮,修改的行还会进行精细的单词级高亮。
Diff是查找两段文本(或文件)之间差异的过程,广泛应用于代码审查、文档版本比较、配置文件变更核查、翻译校对等场景。通常按行比较,区分哪些行被新增、删除或修改内容。Git的git diff以及各种代码编辑器的对比功能都基于这一原理。该工具不会将文本发送到服务器,全部在浏览器中即时完成比较,因此即使是敏感的代码或文档也能安全查看。
逐行比较将整行作为一个单位,判断是否相同。而逐词比较则更进一步,精确指出修改的行中具体哪些单词发生了变化。例如"你好,很高兴见到你"变为"你好,谢谢你",逐行比较只会显示"已修改",而开启逐词高亮后可以精确看到"很高兴见到你"被删除,"谢谢你"被新增。该工具会对修改的行自动叠加逐词级高亮。
在比较仅缩进或行尾空格不同的代码,或仅大小写不同的文本时,这些细微差异如果被当作有意义的变更会使审查变得繁琐。开启"忽略空格"会将连续空格视为一个,并在比较前去除首尾空格;开启"忽略大小写"会将大写和小写视为相同。这在比较经过格式化工具处理的代码,或手动输入导致大小写不一致的文本时尤其有用。