Hi, On Tue, 16 Feb 2010, josh robb wrote: > I'm using git svn (1.6.4.msysgit.0) within a WindowsXP VM running > under VMWare fusion on OSX 10.5. For me (and at least one other person > I know) git svn has been unbearably slow. > > My profiling shows that almost all of the git-svn runtime is being > spent in DynaLoader (via SVN::Base::import) which I guess is slow in a > virtualized windows environment. For example: > > $ time perl /libexec/git-core/git-svn rebase > Current branch master is up to date. > > real 2m56.750s > user 0m3.129s > sys 2m39.232s > > I've been able to make significant (an order of magnitude) > improvements to it's performance by delaying SVN::Base::import from > running until it's actually needed. After making this change: > > $ time perl /libexec/git-core/git-svn rebase > Current branch master is up to date. > > real 0m33.407s > user 0m1.409s > sys 0m23.054s > > git svn rebase -n goes from 3m7.046s to 0m10.312s. > > Would love to get some feedback/thoughts etc... How about the following commit message (trying to follow http://repo.or.cz/w/git.git?a=blob;f=Documentation/SubmittingPatches;hb=HEAD): -- snip -- git svn: delay importing SVN::Base until it is needed Importing functions from a .dll into Git for Windows' perl is pretty slow, so let's avoid importing if it is not necessary. [... timing statistics here...] Signed-off-by: Josh Robb <josh_robb@xxxxxxxxxxx> -- snap -- Hmm? Ciao, Dscho