CompressExtension
This extension is not distributed with Mercurial.
Contents
Author:Pradeepkumar Gayam
Download site:http://selenic.com/hg/file/tip/contrib/compress.py
Overview
This extension is used to convert normal repositories into parentdelta repos. It reads revision of each file and rewrites the in new repository. It can be used to observe the affect of changes made in revision() and addrevision() functions in revlog. This was written aiming to convert a repository to parent delta repo. Some optimization can be done to cost less CPU.
Configuration
Configure your .hgrc to enable the extension by adding following lines:
[extensions] compress = /path/to/file
Usage
hg --config format.parentdelta=True compress -R from to
Stats
Inserting full revision at a distance of 2 * len(fulltext), the Mercurial repository compressed from 11MB to 4.4MB.
At a distance of 4 * len(fulltext): 11MB to 4.2MB.
At a distance of 6 * len(fulltext): 11MB to 2.0MB.
danchr in IRC quotes that 2GB repo compressed to ~380MB.