So, the reason I was wanting to avoid extra repositories was that we are using GitHub to store our repositories and the extra repositories I would need to create would put us over the limit of our current plan.
As such, the trick, I found out, is to keep all of the repositories local. I knew this was a possibility, but wasn't sure how to reference the local repositories. It turns out it couldn't have been more easy! Here are the steps I went through:
For each SVN repository:
git svn clone http://svnhost.com/path/to/svn/repo
This will create a local Git repo with all of the history from SVN (even timestamps are preserved!!). Next, go to the repo you want to merge it in to. Create a branch, and pull in the code from:
git checkout -b newsvnbranch1
git pull path_to_newsvnbranch1_git_repo
Now, the remaining steps aren't part of the original question, but they were the end goal that I needed to accomplish - all the SVN repos and histories merged together, but in their own directories.
git mv trunk newname1
git checkout master
git merge newsvnbranch1
Completing those steps for each SVN repo essentially leaves your original Git repo with the following structure:
original
|-newname1 (containing the contents of the first SVN repo)
|-newname2 (containing the contents of the second SVN repo)
|-newname3 (and so on...)
And, git log
will now show the history of each repo intertwined.