# HG changeset patch # User Jim Hague # Date 1229895778 0 # Node ID 561edf8527971b134aba064f47ee037deeb068ce # Parent 175493e0e45759a53fb18625bfa61ed547e962fd More detail on file format changes, from post by MM to mercurial.general. diff -r 175493e0e457 -r 561edf852797 Hg.txt --- a/Hg.txt Sun Dec 21 21:42:23 2008 +0000 +++ b/Hg.txt Sun Dec 21 21:42:58 2008 +0000 @@ -584,8 +584,16 @@ changes after that point. These changes are then copied over and applied. -The Mercurial revlog format has proved remarkably durable. Over the -lifetime of Mercurial, there have been just two changes to the file -format. And one of those (a very recently change at the time of -writing, yet to appear in a release version) is a very small change to -filename storage required to deal with Windows-specific issues. +The Mercurial revlog format has proved remarkably durable. Since the +first release of Mercurial in April 2005, these have been a total of 5 +changes to the file format. However, of those, all but one have been +changes to the handling of file names. The most recent change, in +October 2008, and its predecessor in December 2006, were both +introduced purely to cope with Windows specific issues. The one change +that touched the datastructures described above was in April 2006. The +format introduced, RevLogNG, changed only the details of index data +held, not the overall design. The chief Mercurial developer, Matt +Mackall, notes that the code in present-day Mercurial devoted to +reading the old format comprises 28 lines of Python. Compared with, +say, the early tribulations of Subversion and the switch from bdfs to +fsfs, this is an impressive record.