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

improving subversion treatment of compressed XML/text file formats

From: David Kaplan <David.Kaplan_at_ird.fr>
Date: Wed, 22 Oct 2008 17:03:43 +0200


I use subversion as my personal backup system. Though I do my share of
coding, a lot of what I put in my subversion database are compressed XML
files (for example, openoffice documents). Currently, svn treats these
as binary files, leading to a ballooning svn database as there is no
differencing on these files (correct me if I am wrong about this). For
a while I have been thinking that svn could do a lot better than that
since these are trivially compressed files. This could reduce
significantly the amount of disk space that versioning these files
requires and improve the ability to see differences between files (e.g.,
conflict resolution). As these file formats are popping up everywhere
(openoffice, MS Office, ...), it might be worth integrating a third
"type" of file into svn (along with text and binary): compressed-text.
Someone smarter than I might even be able to do this with the current
architecture of hooks with minimal changes to subversion itself, but a
formal integration doesn't seem too hard.

The basic idea would be that when svn adds one of these files, it adds
the full compressed version initially, but thereafter it uncompresses
stored and working copy versions, differences them and just stores these
differences. The user would specify which file formats to autodetect as
compressed text and the compression algorithm for each file type through
configuration options and svn properties.

One question would be what to do with conflicts, but I think this isn't
a show stopper and a logical behavior can be found.


David M. Kaplan
Charge de Recherche 1
Institut de Recherche pour le Developpement
Centre de Recherche Halieutique Mediterraneenne et Tropicale
av. Jean Monnet
B.P. 171
34203 Sete cedex
Phone: +33 (0)4 99 57 32 27
Fax: +33 (0)4 99 57 32 95
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-10-22 20:03:51 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.