svn storage compression
I've just moved to subversion. I've read somewhere svn transfers and stores data in a compressed form. I know compressed transfers mean 开发者_StackOverflow中文版'http:' compression with apache.
Does storage compression mean lazy copies and keeping only deltas for revisions, or is there a real compression like gzip used by subversion live for the storage? Currently in the repo db, I can see submitted text files in the clear text form. I use Windows for the server.
Thanks!
I'm not certain of the details, but I expect Subversion might store the current copy of the file uncompressed, while compressing previous revisions to save space. Subversion also uses techniques like "skip deltas" to reduce the amount of storage required for past revisions while still offering good performance.
In any case, the format of the repository database is subject to change, and does regularly. I've never been concerned about exactly how files are stored in Subversion. They just are, and that's pretty much all that matters.
There is no compression in the traditional sense (using code like zip). Subversion saves space through deltification and representation sharing. I have personally tested creating a repository based on branching using SVN copy and making a repository that's first revision has two identical directories. Both of these repositories were the same size and both were capable of merging between directories/branches. The revision files also took less disk space than the working copy.
精彩评论