Subject: git svn clone a non-standard repository

From: John Locke <[email-masked]>
Date: Tue, 24 Jun 2008 11:32:37 -0700

Hi,

I'm trying to create a git repo of the Dojo Toolkit, which has a quite 
non-standard layout. There are 4 modules to the current Dojo project 
that I care about (and some others in the repo that I'm not interested 
in). The problem is, the trunk code is split out into 
<modulename>/trunk, while tags are in tags/<tagname>/<modulename> and 
branches are in branches/<branchname>/<modulename>. e.g:

moduleA/trunk <- contains trunk development of moduleA
moduleA/tags   <- empty
moduleA/branches <- empty
moduleB/trunk
moduleB/tags
moduleB/branches
moduleC/trunk
moduleC/tags
moduleC/branches
moduleD/trunk
moduleD/tags
moduleD/branches
moduleE/trunk <- I don't care about this one...
trunk/   <- contains ancient version, not actual trunk
tags/1.0.0/moduleA <- contains tagged version of moduleA
tags/1.0.0/moduleB <- contains tagged version of moduleB
tags/1.0.0/moduleC <- contains tagged version of moduleC
tags/1.0.0/moduleD <- contains tagged version of moduleD
tags/1.0.1/moduleA
tags/1.0.1/moduleB
...

So I'd like to set up a git repo that tracks this SVN repository, and 
allows me to see:
moduleA/
moduleB/
moduleC/
moduleD/
... in my checkout, whether I'm on trunk or a tag.

What's the best way to set this up?

I've started with "git svn clone http://path/to/svn -T moduleA/trunk -t 
tags -b branches", and it's been sucking down branches for a couple days 
now, still not done. Can I set up moduleB/moduleC/moduleD as additional 
remotes in this same repository, and end up with the desired result? Was 
thinking I would add additional svn sections to .git/config, and then 
git svn fetch -- will this work, or is there a better way?

Thanks,

-- 
John Locke
"Open Source Solutions for Small Business Problems"
published by Charles River Media, June 2004
http://www.freelock.com