title: How to migrate large SVN repos to Git?
body: <p>I'm new to SVN. I'm trying to do some testing with migrating large SVN repositories to Git, mainly out of curiosity. Originally, I was following the <a href="https://git-scm.com/book/en/v2/Git-and-Other-Systems-Migrating-to-Git" rel="nofollow noreferrer">Git Book</a> documentation on this, but quickly learned that for large SVN repositories (10k+ revisions), that <code>git svn clone</code> is awfully slow. I waited a few hours and only got to revision 200 or so. I stopped it, did some research, and came across this <a href="https://www.jeffgeerling.com/blogs/jeff-geerling/switching-svn-repository-svn2git" rel="nofollow noreferrer">blog post</a>. It recommends using the migration utility used by the KDE team, <a href="https://github.com/svn-all-fast-export/svn2git" rel="nofollow noreferrer">svn2git</a>, to handle the SVN to git migration instead of <code>git svn</code>. From my understanding, in order to use svn2git I need to obtain a local copy of the repository. Upon doing some more research, I found out how to backup and restore SVN repositories (I think) locally without rsync/ssh access. Since I don't know where to find publicly hosted SVN repositories, aside from a few well-known projects, I'm using the TortiseSVN repository (some 29k revisions). I've run the following commands:</p>
  <ol>
  <li><code>svnrdump dump https://svn.osdn.net/svnroot/tortoisesvn &gt; repo.dump</code> to dump the TortiseSVN repository to a local dump file.</li>
  <li><code>svnadmin create tortisegit.svn</code></li>
  <li><code>chmod 777 -R tortisegit.svn/</code> to change <code>db</code> folder permissions to allow for the dump to be loaded.</li>
  <li><code>svnadmin load tortisegit.svn &lt; repo.dump</code> to load the dump's contents into the repository. This process took around 9 hours. I'm not sure if that's normal for a 29k revision repo.</li>
  <li>Here's where I get confused. I'm expecting to see the standard <code>trunk/</code>, <code>branches/</code> and <code>tags/</code> directories, but I don't. I see this</li>
  </ol>
  <pre><code>$ ls tortisegit.svn/
  
  README.txt  conf  db  format  hooks  locks
  </code></pre>
  <ol start="6">
  <li>Assuming <code>5.</code> is correct, I pressed on and performed a checkout using <code>svn co file:///mnt/d/Source_Code/tortise-svn/tortisegit.svn</code> so I can create the authors mapping file. But this checkout has been running for well over 24 hours. Clearly something is wrong. I've stopped the <code>svn co</code> and the directory size of its parent folder is 19 GB!</li>
  </ol>
  <p>Again, I'm new to SVN, but am open to learning more about it (even if I've only used git professionally and personally). If I'm doing something horribly wrong, please elaborate. I'm really not sure why the performance of <code>svn co</code> is so bad, but maybe it's expected. Maybe there's another way to migrate large SVN repos to git?</p>
  <p><strong>Edit:</strong></p>
  <p>I did a <code>svn co https://svn.osdn.net/svnroot/tortoisesvn/trunk</code> as mentioned by the TortiseSVN project and it took around 30 minutes.</p>