I have found that there is a problem in our SVN repository, which was
converted from CVS using cvs2svn 2.5.0.
It concerns two exe files which are corrupted when I check out or
export them. The trunk files have been expanded by 905 bytes or shrunk
by 119 bytes in the two cases. Both are in the same project. They have
82 and 67 commits into them respectively.
Other projects I had checked before do not show this behaviour, so it
was a surprise when this was seen today.
I also tried to export an old tagged version from 2008, but it too has
the same corruption. Most easily seen by the missing icon in Windows
Explorer.
The files were originally managed in CVS as -kb (binary) files so the
cvs2svn conversion should not have treated these files any different
than other exe files in other projects.
But there is one difference between these files and virtually all
other CVS stored files and this is the size of the RCS files in the
repository. The xxx,v files are 487Mb and 367Mb respectively.
The next biggest files in another project are 202Mb and 160Mb.
Maybe the cvs2svn script choked on the very big file sizes for the
problem file?
I can do a svn check out or export on the files in the other project
with the smaller sized RCS files and that works OK.
So if the problem is really the size of the input CVS files then I
wonder if this is recoverable at all?
Other parts of the SVN repository has been used already and there are
new commits, so I cannot scrap it all and start over...
But luckily the project it belongs to has not yet been touched by a
SVN commit so given that I can remove it completely it should be
possible to convert it once more (only this single project) and then
load it from the dump file into the repository again. Or is this not
possible?
Is there any way to re-migrate just the affected project from the CVS
files into Svn with some improved configuration of the cvs2svn
process? Each project (top level directory in CVS) has been treated as
a separate svn project during import so the trunk, tags and branches
directories are located separately inside each such project.
So if I re-convert only this single project I will get an SVN dump
file that only contains this and it should be possible to load it,
provided that the already loaded project by the same name can somehow
be completely removed from the SVN server. If I just delete it via svn
I guess it will still live there as older revisions and blocking a
renewed load, right?
Being new to Subversion I don't know where to continue my search for
how to resolve the problem.
--
Bo Berglund
Developer in Sweden
Received on 2018-01-20 17:26:08 CET