In a recent post to his blog Grzegorz Godlewski talks about some of the criteria to consider when selecting your source code management tool (between Subversion, Git and Mercurial).
Each of them has its own advantages and disadvantages so the project’s requirements, development environment and team members receptivity should be taken into consideration. Relying on my own experience in project management and using version control systems to manage the development process I’ve formed the conclusions listed below that may be helpful while considering usage of one of described SCM’s in your own projects.
He talks about how the size of the project can effect the decision and a bit more detail about what each of the version control systems are good at. The PHP project itself has recently made the shift to git away from Subversion (you can find more information on the PHP.net site).