CLI-приложение, принимает 2 файла, сравнивает их и выводит различия.
npm install -g diffcalculus
Usage: gendiff [options] <firstConfig> <secondConfig>
Compares two configuration files and shows a difference.
Options:
-V, --version output the version number
-f, --format [type] Output format
-h, --help output usage information
типы поддерживаемых файлов: *.ini, *.json, *.yml
типы вывода дифа: standart (по умолчанию), plain, json
npm install --save-dev diffcalculus
import genDiff from 'diffcalculus';
const diff = genDiff(<firstPathToFile>, <secondPathToFile>)
console.log(diff);
{
common: {
setting1: Value 1
- setting2: 200
+ setting3: {
key: value
}
- setting3: true
setting6: {
key: value
+ ops: vops
}
+ setting4: blah blah
+ setting5: {
key5: value5
}
}
+ follow: false
}
Property 'timeout' was updated. From 50 to 20
Property 'proxy' was removed
Property 'follow' was removed
Property 'verbose' was added with value: true
[
{
"key": "group1",
"type": "nested",
"children": [
{
"key": "baz",
"type": "updated",
"oldValue": "bas",
"newValue": "bars"
},
{
"key": "foo",
"type": "unchanged",
"value": "bar"
},
{
"key": "nest",
"type": "updated",
"oldValue": {
"key": "value"
},
"newValue": "str"
}
]
},
{
"key": "group2",
"type": "removed",
"value": {
"abc": "12345"
}
}
]