This area is an archive and is no longer actively maintained. Information found on this page is likely to be extremely out of date and therefore highly inaccurate. We recommend the Ximbiot - CVS Wiki for up-to-date information about CVS and its associtated tools.

If you do find anything useful on this page that is not yet in the Ximbiot - CVS Wiki and you have the time, please add it!

Development of Xdelta

Development of Xdelta

For user information on Xdelta, see our user page.

Also see the Xdelta page from Josh Macdonald, the author.

Xdelta and CVS, development ideas

No one has yet integrated xdelta into CVS, but doing so would provide improvements in handling binary files, particularly with respect to disk and/or bandwidth usage. The rest of this page is aimed at developers who may be interested in working on this.

The first and easiest way to use xdelta would be in the remote protocol, to replace the "Rcs-diff" response. What makes this particularly easy is that there are no hairy compatibility issues; CVS's repository and working directory formats would be unchanged.

The second way would be to replace GNU diff in generating the individual deltas in RCS files. This would be relatively easy, and could reduce the disk space required for the CVS repository. Note that this would not entail using the archival features of xdelta. One would want make this an option, so that people could choose the traditional CVS repository format if desired.

The final way would be to use the archival features of xdelta to replace RCS files. This would be a bigger project, although it depends of course on how closely the design resembled RCS files. The main problem that this is trying to solve, as far as I know, is to speed up access to the tip of a branch. I'm not sure that either RCS or xdelta 0.x really has a good way of handling this, and I haven't looked at the xdelta 1.x stuff yet. Also, from what I've seen, this problem isn't the most pressing performance problem in CVS.

Standardizing binary deltas

The GDIFF (generic difference) proposal to the W3C would standardize a file format for describing differences between two files (similar to the xdelta format).

Items for xdelta 0.22

There was an apparent bug in xdelta 0.22, whereby either the delta generation or the delta application seems to corrupt the data. However, the xdelta maintainer reports never being able to reproduce this, and xdelta 0.22 is fairly old relative to the latest downloads anyway. So this should be considered unconfirmed.

Derek Price, CVS developer and technical editor of Essential CVS (Essentials line from O'Reilly Press) , and others offer consulting services and training through Ximbiot.