2 ms·
I looked this up and for anyone wondering, it's called "diff/merge drivers", but there are only a handful of them out there. Some highlights from a few minutes
by franga2000 5y ago
I looked this up and for anyone wondering, it's called "diff/merge drivers", but there are only a handful of them out there. Some highlights from a few minutes of searching:
- MS Office: https://github.com/lcnittl/DMFO https://github.com/lcnittl/DMFO
- SQLite: https://github.com/cannadayr/git-sqlite https://github.com/cannadayr/git-sqlite
- Jupyter notebooks: https://nbdime.readthedocs.io/en/latest/vcs.html#git-integration https://nbdime.readthedocs.io/en/latest/vcs.html#git-integra...
One big caveat of this is that since git doesn't really store just a stack of diffs, despite the fact it presents itself as such to the user, a custom merge driver will not make your .git grow any less than it would normally.
- est31 5y ago> One big caveat of this is that since git doesn't really store just a stack of diffs, despite the fact it presents itself as such to the user, a custom merge driver will not make your .git grow any less than it would normally. Note that git does support using deltas for storage. But according to docs, custom diff drivers aren't used for those, instead it's a instruction based format. https://git-scm.com/docs/pack-format#_deltified_representation https://git-scm.com/docs/pack-format#_deltified_representati...
- dexen 5y ago>One big caveat of this is that since git doesn't really store just a stack of diffs, despite the fact it presents itself as such to the user, >a custom merge driver will not make your .git grow any less than it would normally. You can go a long way with simple homespun methods. SQL dumps delta-compress in Git very well - especially if you tweak the dump options a bit so that the row order is mostly stable. The same most probably goes for any other textual dump - if the (unchanged) content is largely ordered in stable fashion, it will delta-compress very well, even without any explicit, specialized support in Git itself.