Bryan Murdock wrote: > Simply converting the documents to plain text for diffing doesn't seem > like right solution at all (that's what I gathered they were doing on > the above referenced web page). It seems like they are just storing > the binary file (compressed xml) in the SCM, which for most of them, > wastes a lot of disk space since they don't store only the deltas, but > the whole file for each version (actually, from what I understand > that's what git does for every file, but it does have an option to > "pack" your repository which then stores only deltas). > > What you really want, as Michael said, is to have the xml (plain text, > basically) stored in the revision control system. I suppose you could > have an option to have Open Office not compress the files so that the > SCM tool would not need any special configuration because they would > just be text files like any other source code that they can handle. > Of course, if you edit a spreadsheet and then want to see a diff of > changes between versions, seeing what changed in the xml probably > isn't going to be very helpful. You'd need some external diffing tool > that could be fed the xml diff and portray that in some useful manner. > > The other option would be to have the SCM tool recognize open document > formats and do the unzipping themselves in order to be able to store > deltas, do diffs, etc. Here, though, you'd have the same diff problem > mentioned above. I doubt if any SCM can handle that right now, but I > admit I hadn't thought about it. Shouldn't you just be using LaTeX > and Emacs instead of OpenOffice? :-) Just kidding!!! Hmmm, there is > a spreadsheet mode for Emacs.... No really, I'm kidding. Even I > don't go that far. > > So it seems like you'd need a plugin that would, upon a checkin of an > OpenDocument file, unzip it and then feed it to the SCM. It would > also intercept a diff and feed the text diff output into some sort of > nice GUI OpenDocument diff tool. Most tools also have an annotate > (AKA, blame, praise, etc.), which would also need some nice > presentation to the user. It's be nice to have a layer that is SCM > agnostic that just does the conversions and nice presentation to the > user of data, and then you could have version control tool specific > plugins/patches that all talk to that. > > Sounds like a good Summer of Code project for Google, except that > summer just ended... > > Bryan > -------------------- > BYU Unix Users Group > http://uug.byu.edu/ > > The opinions expressed in this message are the responsibility of their > author. They are not endorsed by BYU, the BYU CS Department or BYU-UUG. > ___________________________________________________________________ > List Info: http://uug.byu.edu/cgi-bin/mailman/listinfo/uug-list
If you don't need all the features, you can simply use OpenOffice's track changes feature. It's a sort of versioning system built right into the file itself. Once the document owner approves changes, the change history gets lost, but it's a simple way to control document revisions. Brandon Stout http://mscis.org -------------------- BYU Unix Users Group http://uug.byu.edu/ The opinions expressed in this message are the responsibility of their author. They are not endorsed by BYU, the BYU CS Department or BYU-UUG. ___________________________________________________________________ List Info: http://uug.byu.edu/cgi-bin/mailman/listinfo/uug-list
