Large repository clone error
Matt Mackall
mpm at selenic.com
Tue Oct 19 19:13:02 UTC 2010
On Mon, 2010-10-18 at 13:48 -0700, Ryan Hartzog wrote:
> data/WebVelocity_DavidWeekleyHomes/Site/Images/Flash/CityMaps/
> LocationsMap.swf.i at 0: missing revlog!
> data/WebVelocity_DavidWeekleyHomes/Site/Images/Flash/CityMaps/images/
> houston.jpg.i at 0: missing revlog!
> data/WebVelocity_DavidWeekleyHomes/Site/Images/Flash/CityMaps/images/
> houston_sm.jpg.i at 0: missing revlog!
> data/WebVelocity_DavidWeekleyHomes/Site/Images/Flash/CityMaps/xml/
> mapXML.xml.i at 0: missing revlog!
Ok, so you have four files that have gone missing from the repository
database. That means your repository is damaged starting at revision 0.
Clone can't be expected to work at this point.
First, you should figure out how those files went missing and avoid
doing it again. The usual answer is "overzealous deletion by user with
the help of a tool" or "manual copy missed some files". Mercurial itself
never deletes these files and cleans up if it fails to copy something
during clone.
Next, repair. There are a few strategies here:
- find a copy of the repository that passes verify and has all the
changeset you care about and use it
- find a copy of the repo that has good versions of the damaged
changesets and pull any missing changeset into it from the damaged repo
- find the -exact- versions of the missing files and manually
reconstruct the missing .i files
I've put some notes on how to do that here:
http://mercurial.selenic.com/wiki/RepositoryCorruption#Reconstructing_missing_revlogs
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial
mailing list