A git merge driver that use xdiff to automatically resolve merge conflicts in json files. It also detects indentation automatically. This project was inspired by git-po-merge.
This can be done one of two ways, globally or per-project/directory:
Install:
npm install --global git-json-merge
Add to ~/.gitconfig
:
[core]
attributesfile = ~/.gitattributes
[merge "json"]
name = custom merge driver for json files
driver = git-json-merge %A %O %B
Create ~/.gitattributes
:
*.json merge=json
Install:
npm install git-json-merge --save-dev
Update git config:
git config merge.json.driver "$(npm bin)/git-json-merge %A %O %B"
git config merge.json.name "custom merge driver for json files"
Add the same .gitattributes
where desired and commit.
Note .gitattributes
is only used after committed.
Helpful docs:
- http://git-scm.com/docs/gitattributes#_defining_a_custom_merge_driver
- http://stackoverflow.com/questions/28026767/where-should-i-place-my-global-gitattributes-file
Thanks: