Tools: WebSVN

I ran over this by need and I must say in the end I’m pretty confident with: WebSVN is a PHP script/webapp that publishes one or multiple Subversion-Repositories as HTML on the fly.

Next to what you’re known to be served by trac, you get a nice display of diffs, blame, syntax highlighting by gheshi (there is SQL, but many, many syntaxes ieeeeks!) and well, what you expect if you put together SVN + PHP. And you get RSS feeds and a nice listing of log entries. Yes, it’s doing some stuff better than trac.

It ships with a templating system that is really easy to modify right away. And there are as well RSS feeds everywhere -svn-repository based. That is really nice.

And now for some critique: It does not integrate that well with Apache and especially other Webservers. It uses some kind of special “Negotiation” for nice URLs in specific. It’s possible to deal with it, but if you want a nice URL layout with WebSVN expect to invest some minutes, this does not work out of the box in full especially not with other Webservers as our friend apache. There are nice URLs built in, but that might not be for that usefull in the end. Just to say it clear: It works out of the box on any CGI compatible webserver, so no fear, this just runs.

Next to that you might need to do a 2-4 line gheshi hack otherwise your perl-regex lib will segfault the PHP binary. That’s why I always suggest preferring fast-cgi over mod_php because it won’t kill your server.

Conclusion

WebSVN is a great tool to have on the webmasters side. Even though currently other SCM tools are more in the hype (GIT, Bazar), this one is the right choice for Subversion and therefore for those who have a subversion repos running. The RSS and log features are of great help as well as syntax highlighting and comparison of changes (diff). It’s mainly build on libs and binaries you have on your linux box and that is something that I like a lot because it’s transporting the unix principle into the web-world. It just works.

This entry was posted in Hakre's Tips, PHP Development, Tools and tagged , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s