分享一下,基于node的文件diff工具,适合文本文件(如代码)的内容对比,可作为命令行工具使用,可作为npm依赖引入。
地址: https://github.com/nighca/differ-cli
diff版式借鉴github的diff页面,多行改动的逐行对比机制目前与github一致,而更智能的逐行寻找相似度最高者进行比对的功能正在开发中。
目前的问题是性能不是特别好,对比两个内容差别较大,行数约万行的文件时需要约7秒(我自己电脑,用的未压缩的jquery1.11.1跟jquery2.1.1测试);当然如果是几百行的文件对比,基本没有压力。
欢迎使用,大量自用过,存在bug的几率是很小的~
代码写得有点丑陋,不过还是欢迎review/提issue/pr。
以下为readme内容:
differ-cli
Differ in cli, based on nodejs.
Driven by powerful diff engine — universal diff.
Usage
-
CLI
$ npm install differ-cli -g $ differ-cli <file1> <file2>
-
node
var differ = require('differ-cli') differ('path/of/file1', 'path/of/file2', function(err, result){ !err && console.log(result); });