The idea is to get PHP away from venerable CVS version control system, which is just too old to serve our needs any longer. Several different newer systems have been proposed, notably Subversion, Git, Mercurial and Bazaar
Some comments on SVN, partially from http://wiki.pooteeweet.org/PHPSVN/ and edited for clarity:
Reasons for SVN:
Reasons against SVN:
On the subject of SVN tags, php [AT] adamashley [DOT] name says:
SVN doesn't have real tagsthank god. how many times have you created a tag and need to come back and turn it into a branch? the under lying system should place limitations upon how you use it, those limitations should only be agreed upon and implemented by the people using the system.
Insert stuff here Question: How official is the win32 support of git at the moment? http://code.google.com/p/msysgit/ says it is currently merged into official distribution. Answer: with GIT 1.6.0 the MinGW Project is merged into GIT, which means that git should run nicely under Windows. Question2: MinGW is a separate project from GIT. Even if GIT compiles successfully, what about proxy support - is it able to detect them and authenticate in domain environment?
Reasons for GIT:
diff $ time git --no-pager diff 5.2 5.3 ( a complete diff between 5.2 and 5.3 branches ) real 0m13.283s user 0m3.390s sys 0m2.125s Checkout: Switching branches between 5.2 and 5.3 with $ time git checkout 5.3 real 0m5.774s user 0m0.923s sys 0m1.358s
Cool. Can you now prove that CVS, SVN, Bazaar and, in particular, Mercurial are significantly slower?
Reasons against GIT:
Could we summarize what is wrong with the current system, to have some criterias to be able to choose a suitable system?
For example:
http://news.php.net/svn.migration
http://doc.php.net/php/rfc/rfc-proposal-show.php?id=8
http://www.javaworld.com/javaworld/jw-09-2007/jw-09-versioncontrol.html Maybe not the best article but a starting point, compares CVS, Subversion, Bazaar, Mercurial
http://www.infoq.com/articles/dvcs-guide DVCS Overview with comparison of Git, Hg, and Bzr
http://bazaar-vcs.org/BzrVsGit Bazaar vs GIT (from the Bazaar Point of View)
http://tomayko.com/writings/the-thing-about-git Shows how git solves the “The Tangled Working Copy Problem”, with nice examples and a discussion/reference to other VCSes as well
http://weblogs.mozillazine.org/preed/2007/04/version_control_system_shootou_1.html Why mozilla chose mercurial
Mozilla people discussing mercurial and git and others
http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html Another Mercurial vs. GIT
Migrating the Python CVS to Subversion Rationale and procedure