The Mercurial About page says:
“Traditional version control systems
such as Subversion are typical
client-server architectures with a
central server to store the revisions
of a project. In contrast, Mercurial
is truly distributed, giving each
developer a local copy of the entire
development history. This way it works
independent of network access or a
central server. Committing, branching
and merging are fast and cheap.”
So when every developer gets a clone from _ (?), then every developer can start working on the project for his own. 10 months later everyone has done something and changed RootViewController in a whole different way.
Now, what’s the point of cloning the whole thing? When Dev A changes RootViewController, then Dev B wants to continue work based on that change. Or not? But how will Dev B ever get that change? By cloning the whole thing every day? How about his own changes? Is there some kind of super merge operation that merges all clones into one big superclone which everyone would have to replace with his individual clone once in a while?
I am sure Mercurial is cool and useful. But I just don’t get it.
I found the basics here a good introduction to Mercurial.
Also, it is convenient to have some central repository where every one can push their changes and pull changes from.