Subject: Re: Efficient way to import snapshots?

From: Craig Boston <[email-masked]>
Date: Mon, 30 Jul 2007 17:20:28 -0500

> 
> [ snip lots of helpful comments from various people ]
> 

I just wanted to say thanks to Linus and Junio and everyone who
commented, I think I have a much more workable solution now.  With my
brute-force remove and re-add everything script the times for import
looked like this:

Importing /compile/co/RELENG_4 (no changes):
svk import: 166.86 seconds
       git: 455.82 seconds

Importing /compile/co/RELENG_6:
svk import: 203.69 seconds
       git: 796.48 seconds

Importing /compile/co/HEAD:
svk import: 243.90 seconds
       git: 837.13 seconds

Ok, so I remembered wrong, git was only 4x slower.  Still, I knew it
could do better than that...

After transplanting the .git directory from 3 cloned repositories
checked out to the appropriate branch into the CVS checkout directories,
priming them with a 'git status', and using the git ls-file | git
update-index trick followed by commit -a, here are the revised times:

# On branch cvs_RELENG_4
nothing to commit (working directory clean)
git: 67.65 seconds

Created commit 106bc0b: Import 20070730 snapshot
 7 files changed, 259 insertions(+), 75 deletions(-)
 Git repository at /compile/co/RELENG_6/src updated
git: 62.02 seconds

Created commit 776031b: Import 20070730 snapshot
 86 files changed, 10929 insertions(+), 587 deletions(-)
 [snip lots of lines for added files]
 Git repository at /compile/co/HEAD/src updated
git: 61.77 seconds

_MUCH_ better.  I knew it had to be capable of faster :-)

Again, thanks for all the help.  I look forward to seeing what else git
can do!

Craig