User: Password:
Subscribe / Log in / New account



Posted May 14, 2011 13:08 UTC (Sat) by nix (subscriber, #2304)
In reply to: DVCS-autosync by loevborg
Parent article: DVCS-autosync

Actually, you can plug in domain-specific diff/merge tools into git (OpenOffice documents were a named use case for this). Obviously the merge tools for binary stuff need their own way to do conflict resolution as well.

Git is exactly as efficient at handling binary files as handling text files: you have to go back to CVS to find something that isn't good at binary files.

(Log in to post comments)


Posted May 19, 2011 5:07 UTC (Thu) by smurf (subscriber, #17840) [Link]

There are a couple of document formats which are singularly not suited for VCSes, though.

OOo documents, for instance, are compressed XML files. There's no sane way to store multiple versions of these in a git archive. Store them uncompressed (dunno how to teach OOo that) and you get a signficant decrease in storage requirements, long-term.

Still needs a domain specific conflict rresolver, of course. You could probably script your way into LibreOffice to do it, though it's nontrivial.


Posted May 19, 2011 5:20 UTC (Thu) by dlang (subscriber, #313) [Link]

actually, since git does the compression itself, the answer is to have git uncompress the documents and version the uncompressed data. then when you check it out git assembles the version you want, then compresses it as you check it out.

you can even insert XML aware diff engines if you want.


Posted May 26, 2011 19:43 UTC (Thu) by nix (subscriber, #2304) [Link]

Yes indeed. 'man gitattributes' and search for 'filter' for something that may help here.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds