Subject: svn to git with non-standard layout

From: Bernd Schubert <[email-masked]>
Date: Wed, 23 Nov 2011 20:23:34 +0100

Hi all,

we just want to migrate from subversion to git, but so far all attempts 
to do that resulted in missing commit information.

So we have an svn repo with multiple sub-repos. The trouble is now that 
those sub-repos have their own trunk/tags (no branches) directories, but 
actually those projects are very dependent on each other and lots of 
commits go to many sub-project in a single commit.
So our new git repository shall meld all sub-projects into a new common 
repository.

So we have something like this:

svn-root -> main-project
             /       |    \
            /        |     \
           proj1    proj2   proj{n}
          /    \     /   \    /    \
         /      \   /     \  trunk  tags
        /       \ trunk   tags
        trunk   tags
                /   \
               tag1 tag{2...n}

I think the same issue has been asked a few times before, for example here:

http://comments.gmane.org/gmane.comp.version-control.git/163491

but I still do not know how to properly convert the old structure into a 
new global one. So we simply want to have:

branches,tags <- main-project -> {proj1, proj2, ..., projN}

I think the above link suggests something like

[svn-remote "svn"]
         url = https://some-repo-url
         fetch=/:refs/remotes/svnroot
         fetch = build_scripts/trunk:refs/remotes/build_scripts/trunk
         fetch = create_repos/trunk:refs/remotes/create_repos/trunk

When I'm going to to 'svn fetch' this, files from different projects are 
going to be in the same directory. But of course, the project directory 
structure is supposed to stay as it it.

Any ideas what I still could try to do?

Thanks,
Bernd