Jesse Keating <jkeating(a)redhat.com> wrote:
I've finally been able to convert all extras package
FC3 and up) to git, much in the same layout as dist-hg (each release "branch"
being its own standalone repo (complete with inherited history from devel/
branch at split time))
I haven't yet started modifying Makefiles and plague to handle getting a
checkout of a package from a tag and building it. That will probably come
Some interesting comparisons:
Time to convert from CVS to GIT:
Did you use git-cvsimport?
One invocation to convert an entire tree containing lots of
individual package trees into a single git repository?
Time to convert from CVS to HG:
What tool did you use here?
The only tool I've used is tailor, and back when I last used it,
it was about 15x slower than git-cvsimport.
Size of dist-git (with full repack -a -d):
Size of dist-hg (no extra processing):
None of the above are really deciding factors in what to use, just some
interesting anecdotal observations.
What version of git tools are you using? I ask because newer versions
typically produce smaller repositories. And with newer versions of
git-cvsimport, there is no need for a manual repack. In conversions I've
done, the need for a manual repack went away months ago. It may well be
that the incremental repacking now done by git-cvsimport ends up producing
a much smaller repo than the old "repack-everything-at-the-end" technique.
FYI, rawhide has git-18.104.22.168, with is only a few weeks old.
Also, I can attest that the run times using the newer git-cvsimport can be
far faster, with the incremental repack. Otherwise, git would create so
many files that you'd run into terrible file system performance problems.
This depends on file system type.
However, I agree that the initial conversion speed isn't a big deal,
since you do it only once (or at least a relatively small number of
times :-) after all.