Mercurial vs Subversion. Whose performance is better?
There are many articles on SVN versus Hg in general. I would like to focus only on performance.
Live preferences are preferred.
Here's my setup:
(future setup) Windows with IIS for Hg
(current setup) SVN 1.3.2 on top of apache under windows
I would like to have statistics for most of the operations in Commons (commits, statistics, local / remote exits, pushes, etc.). I'm not really sure what are the most common operations for Hg.
Performance is NOT the only thing that matters to us, but it is very important and can be a decisive point when switching to Hg.
However, I would like to see some statistics. How did the journal require to clone a 5GB repo? or something like that.
a source to share
It depends on many factors (and no, merging is not the most common operation - commit, making changes to that thing is the most important part of it, even if DVCS systems are merging and downstream all the time).
So first, you need to update your SVN. It's easy, and once you've run "svnadmin pack" on your repo, you can compare correctly. 1.3.2 is ancient! (current version 1.6.11)
Second, you need to decide if pushing and pulling large repositories is important. For example, I have 12 Gig repo to manage. Fortunately, svn only allows us to fetch a portion of this, not all, so its management has improved a lot.
Also, there are significant performance improvements in v1.7 (done so fast) as performance was not a priority for the SVN guys, they did add features and guaranteed stable stability. Performance is now an issue and is being considered. Take a look at the Dev mailing list to see. Maybe you should wait a bit (or evaluate it using a copy of your repo).
You see, the performance might be the same with your system. This can be a bottleneck in IO where svn usually fails (thought the Dev mailing list has some performances from the monster server chapter with raid-0 SSDs, 24GB of RAM and oddly enough this is a bottleneck on the processor!)
So, in general, you should figure out your workflow and processes. If Mercurial (which is a good choice) then this is for you and then for him, for that. But if it is not, then migration will not help you, no matter how fast it may be.
a source to share
First, maybe update your Subversion?
I think the cost of performance when choosing one that doesn't fit the more natural workflow will overshadow any performance differences.
Let's say that Subversion is superior to Mercurial in every way. Large! If the way you and his colleagues use your repository is better suited to Mercurial, then you become performance and performance stupid.
If what you control is really huge, you probably won't notice the difference. Choose the one that offers the best experience for your use.
a source to share
(Not really an answer, but it may still provide useful context for your question :)
As mentioned in the DVCS tools , the most common operation in VCS, especially distributed operation, is: merge .
And that, whatever your setup, it will always be easier and faster to work with Mercurial than SVN. Cm:
a source to share
iirc svn is usually faster for initially fetching the remote repo as it doesn't need to pull history. after that hg is generally faster, as it will use local data much more and has a more compact DB, therefore, as for remote operations, is faster.
at the moment I can find this as any direct comparison. this is somewhat flawed in that filling any of these VCS with image files is not really for them.
If you really want to get some good stats, then why not try yourself with your own repo?
a source to share