gron
is an incredible tool that makes JSON greppable. But it also makes it diffable, which is great if you have JSON files in Git.
To use gron
to diff JSON in Git, save the json-diff
script below and make it executable. Then add a difftool as shown in gitconfig
, and optionally create an alias to invoke it more easily. Then try it:
git init
echo '{"foo":42,"bar":"hello"}' > foo.json
git add foo.json && git commit -m 'Initial commit.'
echo '{"foo":43,"bar":"hello"}' > foo.json
git jdiff
will give you:
--- a/foo.json
+++ b/foo.json
@@ -1,3 +1,3 @@
json = {};
json.bar = "hello";
-json.foo = 42;
+json.foo = 43;
@lukestanley Seems legit, and very simple indeed. My solution is based on writing
json-diff
first, and only later thinking of using it with git, so that’s why it’s probably more complicated than needed. Thanks for the heads up.