Back in January, I wrote about my feelings that Subversion still beats Git when it comes to the corporate environment. I pointed out that Git has some great features, but that the corporate world was heavily invested in Subversion, and was likely to stay that way.
I subsequently got flamed.
Note: This post is outdated, and has been superseded by Git Versus Subversion: A Reconsideration.
There are lots of projects heading over to Git these days. It’s not hard to see why: Git offers great merging support, distributed version control, and a great playground. Spots like Github even offer centralization crucial to large open source projects. But when it comes to the corporate world, Git may not be ready for prime time.
Even though the SVN extension for PHP is still in beta, the team has done a fantastic job with this PECL package. They’ve captured the most common SVN functions, put them into the package, and provided an easy way to view, manage, and control a Subversion repository right from PHP.
That’s not to say that the package is perfect: far from it, in fact. The documentation is the most disappointing facet, something I may help resolve through contributing to the manual. Also, most programs don’t yet recognize the SVN functions as part of PHP, so syntax highlighting is not available. This is a small inconvenience, however, and certainly no reason to NOT use it.
One of the least discussed features of Subversion is the post-commit hook, or really any of the built-in hooks that Subversion offers. These hooks are executed at a variety of different times, and the one I’m focusing on is the one that is executed just after you commit changes to the repository.
Keith Casey mentioned to me one day that he could turn on “commit messages” and I inquired as to what this was. He explained that he could have Subversion mail him every time someone committed to a repository. Being someone who works with others, I thought I’d give it a shot.