Thread (52 messages) flat view 52 messages, 9 authors, 2016-06-15

Re: Speeding up the initial git-svn fetch

From: Matt Stump <hidden>
Date: 2016-06-15 22:49:46

I hate making more work for people but I would love a copy of your
notes.  Getting a full clone of our SVN repository is probably the
biggest hurdle to having a git insurgency take root.  Also, which GSoC
project were you referring to?


On Wed, Oct 13, 2010 at 9:02 AM, Stephen Bash [off-list ref] wrote:
quoted
What have other people done in similar circumstances?
Based on suggestions from this list, I sidestepped git-svn and used svn-fe [1] and git-fast-import.  It imports the entire Subversion tree in a single git branch, but using git's tools that's workable.  At an extremely high level I used git-filter-branch to split up into branches and git grafts to stitch the various branches together to represent the SVN history.

The real devil is in extrating the SVN history, but there are a few gotchas in the filtering/recombining.  I haven't written up a complete summary for the list because I thought the GSoC project would supersede my process rather quickly...  If there's interest I can transpose my internal documentation for public use.

As a benchmark, our SVN repository was about 20k commits, ~400 tags, ~100 branches, HEAD contained ~7k files.  git-svn took several weeks (and never finished), svn-fe and git-fast-import took ~20 minutes (my entire process takes about 4 hours).

[1] http://github.com/barrbrain/svn-dump-fast-export

HTH,
Stephen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help