clone git and make installation
$ make install
or install binaries from npm
$ npm install -g gendiff-skhrv1
- program supports four input file types:
.yml
.yaml
.ini
.json
$ gendiff before.json after.json
get diff with default output$ gendiff before.yml after.yml --format json
get full diff tree with JSON output-f | --format [type]
formating output to tree, json or plain, default is tree-h | --help
help page-V | --version
program version
before.json
{
"group1": {
"baz": "bas",
"foo": "bar",
"nest": {
"key": "value"
}
},
"group2": {
"abc": "12345"
}
}
after.json
{
"group1": {
"foo": "bar",
"baz": "bars",
"nest": "str"
},
"group3": {
"fee": "100500"
}
}
$ gendiff before.json after.json
{
group1: {
- baz: bas
+ baz: bars
foo: bar
- nest: {
key: value
}
+ nest: str
}
- group2: {
abc: 12345
}
+ group3: {
fee: 100500
}
}
$ gendiff before.json after.json -f plain
Property 'group1.baz' was updated. From 'bas' to 'bars'
Property 'group1.nest' was updated. From complex value to 'str'
Property 'group2' was removed
Property 'group3' was added with complex value
$ gendiff before.json after.json -f json
[
{
"key": "group1",
"type": "nest",
"children": [
{
"key": "baz",
"type": "changed",
"oldValue": "bas",
"newValue": "bars"
},
{
"key": "foo",
"type": "unchanged",
"value": "bar"
},
{
"key": "nest",
"type": "changed",
"oldValue": {
"key": "value"
},
"newValue": "str"
}
]
},
{
"key": "group2",
"type": "deleted",
"value": {
"abc": "12345"
}
},
{
"key": "group3",
"type": "added",
"value": {
"fee": "100500"
}
}
]