new history punching code
Chris Mason
chris.mason at oracle.com
Thu Sep 21 20:58:41 UTC 2006
Hello everyone,
I've revived my history punching patch, you can pull it from here:
http://oss.oracle.com/mercurial/mason/punch
The code still needs some testing, and I haven't made verify aware of
punched revisions yet, so it will send out lots of errors. But I wanted
to send along my current status for comments:
This adds hg clone --punch rev:rev to remove file revisions from
the resulting repo. A punched file revision is indicated with a
length of -1 in the revlog index.
Changelogs are never punched because they are used in the
push/pull process, but manifests are punched as well.
The first revision after a hole in the revlog history may be
a delta against the last non-punched revision, or it may be a full
revision.
The changegroup protocol is changed slightly. A delta of -1 indicates a
punched revision. This delta has a length of 4, and if it is seen by a
version of HG that is not punch capable, the push/pull will fail.
More information about the Mercurial
mailing list