[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Implementing XML-versioning?

From: Ben Reser <ben_at_reser.org>
Date: 2004-10-01 21:17:30 CEST

On Fri, Oct 01, 2004 at 08:23:15PM +0200, Sebastian Rönnau wrote:
> > Maybe this answers your question, maybe not! Is plain old text merging
> > not sufficient for OpenOffice's file format?
> For two reasons the answer might be no:
> 1. OOo files are a zip archive containing several xml-files.
> 2. OOo uses XML files without any white spaces or newlines. If you apply GNU
> diff on such a file, it marks all the file (which consists of only one line)
> as updated. According to this, the delta has twice the size of the original
> file. I don't know, whether svndiff performs better.

svndiff is a binary difference. Whitespace and CR/LF have no relevence
to how it determines a differece. You could have no whitespace or
whitespace and the difference in svndiff size will be negliable.

Now the zip compression will ineed probably make svndiff behave poorly
for keeps lots of history of OOo files. Simply because even a small
change in a file will produce large differences in the compressed copy
of it.

While we could use less storage by using different delta algorithms for
different types of data it would be at the cost of significantly more
complexity. I seriously doubt that it's worth it. One of the mantras
of this project is that disk space is cheap. The effort to implement
content specific deltas is far more expensive in terms of actual
implemention, maintenance and operation than buying more disk space
would be.

-- 
Ben Reser <ben@reser.org>
http://ben.reser.org
"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Oct 1 21:17:44 2004

This is an archived mail posted to the Subversion Dev mailing list.