I have an existing SVN repository, which has a "common" directory containing modules shared by different projects. The layout is like this:
http://example.com/svn/trunk/common/module_1
http://example.com/svn/trunk/common/module_2
...
http://example.com/svn/trunk/common/module_X
For various reasons, I'm managing some other projects with git. I need to use module_X in both SVN and git projects, so I'm planning to use git-svn. However, the following problem occurs:
user@host:/repos$ git svn clone http://example.com/svn/trunk/common/module_X destination
This command will create a new git repository in /repos/destination and fetches module_X content into it. What I need to accomplish is to put module_X in in /repos/destination/module_X, not to fetch it's content directly into /repos/destination/.
What seemed an option in the beginning was to use
user@host:/repos$ git svn clone =--ignore-paths='^((?!module_X).*)$' http://example.com/svn/trunk/common/ destination
which will make a repository in /repos/destination, and a subdirectory /repos/destination/module_X. But the problem is that my SVN repository has a rather large revision history and opreations on the whole common/ path are rather slow.
Does anyone have idea how to accomplish this?