Re: Dealing with repository corruption in one cvs file
Max Bowsher <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.user |
|---|---|
| Message-ID | <[email protected]> |
Matt Ackeret wrote: > Hi, I'm trying to convert a repository to subversion, and have one corrupted > file from the CVS repository. > > Before a few days ago, I knew *nothing* about rcs file format, and I still > don't know much about them. > > The original error I ran into was this (just removing the exact filename, > even though I realize it doesn't really give away any info): > > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.8 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.7 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.6 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.5 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.4 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.3 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.2 > ERROR: './MYFILENAME.c,v' has no deltatext section > for revision 1.1 > > My *original* attempt at fixing it was adding this to the end of the file > --- > 1.8 > log > @DUMMY FAKE ENTRY > @ > text > @#error DUMMY FAKE ENTRY DUE TO REPOSITORY CORRUPTION > @ > --- > and so on through 1.1 > > That satisfied rlog, IIRC, but then gave another error during checkout. > > With some help from someone else, the latest attempt was to bsaically remove > the #error part and the additions were like this > 1.8 > log > @DUMMY FAKE ENTRY > @ > text > @@ > > He was able to check out manually, but for me, the co still failed: > > ERROR: The command 'co -q -x,v -p1.1 ./MYFILENAME.c,v' failed with exit status=1 > and the following output: > co: ./MYFILENAME.c,v:7948: edit script ends prematurely > co aborted Not very useful unless you tell us what was on and around that line number. > So I guess I'm asking for some more ideas about how to add fake entries to > the end so I can do a full conversion (with *known* corruption for the very > early versions of that file). > > Or else, how can I ignore just those versions of the file in the upgrade, > but keep all of the rest of the tags/branches? RCS 'text' sections work like this: The text section for the head revision (as indicated on the first line) is the literal file contents. The text section for every other revision on trunk is a script listing additions and deletions of lines, to turn the successor revision back into that revision - i.e. the script stored under 1.8 turns the full text of revision 1.9 back into 1.8. The text section for every revision on a branch is a script too, but these are applied to the ancestor revision - i.e. the script stored under 1.1.2.1 is applied to 1.1 to generate 1.1.2.1. Max. ------------------------------------------------------ http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1670&dsMessageId=2423135 To unsubscribe from this discussion, e-mail: [[email protected]].
signature.asc
(application/pgp-signature, 197 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAksJzXUACgkQfFNSmcDyxYApowCgyXSeiUeRaehJfL5Qy412oplx WAoAoJ9FifRgg1F48guAEFKk3xNBxHpe =J0mr -----END PGP SIGNATURE-----