你还在手动对比代码差异?这些高质量工具太香了
我发现相当一部分初学者(甚至搬砖多年的老同志)在对比文件差异的时候居然还是
观察法
文本内容少还凑活能用,成百上千行的时候把眼睛累坏了不说,关键还容易漏信息
接触的人与事多了会发现,信息差这玩意,了解的人用生产力早已习惯
而自己第一次知道时表面风平浪静,内心“Woc居然还能这样”
所以,当你想对比两个代码(或各类文本)文件之间有什么差异,在没有Git管理环境的前提下怎么办呢?
本期整理了几个常用的文本对比工具,大大提高效率,一起看看吧
Meld
http://meldmerge.org/
环境:Windows | Linux | Mac

把Meld放在前面是因为这是我用了几年的文件/文件夹对比工具,属于装机必备软件
Meld是一种面向开发人员的可视化差异和合并工具。提供文件甚至整个文件夹的两路和三路比较,并支持许多流行的版本控制系统,可大幅帮助审查代码更改并定位补丁
文件及目录的两路和三路比较
文件对比可以随着输入而实时更新
自动合并模式和更改块操作使合并更容易
支持Git,Bazaar,Mercurial,Subversion等
VSCode自带对比功能
https://code.visualstudio.com/
环境:Windows | Linux | Mac
选择第一个文件

选择第二个文件

结果

KDiff3
https://github.com/KDE/kdiff3
环境:Windows | Linux | Mac

KDiff3同样也是一个文件和目录diff与合并工具,支持
比较和合并两个或三个输入文件或目录
逐行逐字符显示差异
自动合并功能
集成的编辑器,用于解决合并冲突
历史记录合并
直观的图形用户界面
为KDE-Dolphin和Windows-Explorer提供上下文菜单
版本控制
Unicode、UTF-8和其他文件编码
TkDiff
https://sourceforge.net/projects/tkdiff/
环境:Windows | Linux | Mac

TkDiff是diff程序的图形前端,提供两个文件间差异的并排视图,拥有一些创新功能,如diff书签,用于快速导航的diff map,以及用于切片diff区域以实现所需的合并输出
允许Diff区域重新分区以进行精确合并
提供有关更改范围的统计/报告
高度可配置的界面
与多个diff引擎一起使用
支持目录与单个文件比较
完全支持3路合并,并可以帮助解决冲突
WinMerge
https://winmerge.org/
环境:Windows

WinMerge是一个用于Windows的开源文件差异对比和合并工具,可以比较文件夹和文件,以易于理解和处理的可视文本格式呈现差异
3路文件比较
本地化界面
具有语法高亮、行号和自动换行的灵活编辑器
插件支持
使用文件大小和日期进行快速比较
Shell 集成(支持 64 位 Windows 版本)等
Diffinity
https://truehumandesign.se/s_diffinity.php
环境:Windows

Diffinity是一种差异和合并工具,重点在于准确且易于阅读代码差异,并逐行和逐字符的呈现
改进了xml和c风格源代码的diff质量
所有diff的缩略图视图
区分更改、删除和添加的行
双击或搜索一个单词以显示所有实例
语法高亮
支持unicode并自动检测编码
可定制界面
输入新内容时实时更新差异
Notepad++ Compare plugin
https://sourceforge.net/projects/npp-compare/
环境:Windows

Notepad++是流行的编码程序之一,通过该插件可以执行简单的代码比较
以上就是本期全部内容,希望有所帮助,少走因信息闭塞导致的弯路
整理不易,点赞在看呗~