The master from joelonsoftware.com, Mr. Joel Spolsky has written an absolute cream on SVN and Mercurial.
I always wondered why new versioning systems come up, like Mercurial. Joel has really helped my damaged brain to de-toxify everything and have a cleaner approach.
Here is a quote from it
Almost every Subversion team I’ve spoken to has told me some variation on the very same story. This story is so common I should just name it “Subversion Story #1.” The story is this: at some point, they tried to branch their code, usually so that the shipping version which they gave their customers can be branched off separately from the version that the developers are playing with. And every team has told me that when they tried this, it worked fine, until they had to merge, and then it was a nightmare. What should have been a five minute process ended up with six programmers around a single computer working for two weeks trying to manually reapply every single bug fix from the stable build back into the development build.