Michael Flanakin's Web Log

Comments and complaints on software and technology in general

  Home  |   Contact  |   Syndication    |   Login
  159 Posts | 18 Stories | 183 Comments | 497 Trackbacks

News

This weblog is no longer being maintained. For the latest, check out www.michaelflanakin.com!

Article Categories

Archives

Post Categories

Image Galleries

Miscellaneous

Here's my review of known Subversion web-based access tools. If you notice any discrepancies, please let me know. Thanks!

Updated Dec 8, 2005

Overview

The features I'm comparing are the product version (ver); date I last checked for an update (date); language (lang); version of Subversion developed to (svn); whether the tool has any of the following capabilities: WebDAV (DAV), check-in/commit, templating, viewing multiple revisions (rev), RSS output, diff, branch viewing, and search; when the tool was last updated; and, finally, whether there is a demo available.

Tool Ver Date Lang Svn DAV Check-In Templates Rev RSS Diff Branch Search Updated Demo Score
Chora 2.0.1 Dec 05 PHP 1.0? No No Yes No Yes Yes No Oct 05 Yes 5
mod_dav_svn 1.2.3 Dec 05 C 1.2.3 Yes No Yes No No No No No Nov 04 No 4
mod_svn_view Dec 05 C 1.1 Yes Yes 1
SVN::Web 0.41 Dec 05 Perl 1.0.4 No No Yes Yes Yes Yes Yes No Nov 05 Yes 7
ViewVC 0.9.4 Dec 05 Python Yes Yes Yes Yes Yes Nov 05 6
ViewSVN 0.0.8 Dec 05 PHP Yes Yes Dec 05 Yes 4
WebSVN 1.6 Dec 05 PHP Yes Yes Yes Yes Aug 04 Yes 5

If a cell is blank, the feature has been neither confirmed nor denied. Positive or desired responses have also been highlighted. The score accounts for the number of desired responses.

Chora (Go)

This is by far the most interesting tool. I really like how the tool looks and works in the demo. I don't know how customziable it is, if at all, which is pretty important to me. Some of the views are kind of confusing at first glance, but pretty understandable after a good look. One thing I worry about is whether or not it works with Subversion the same exact way. ViewCVS is supposed to support both but has several features that don't work on Subversion. For instance, I noticed that Chora has an Annotate page which is the equivalent to Blame (not that I understand this name, but whatever). They should map easily, but do they? We'll see...

The bug “tracker” is very rudamentary. It only has one in it and doesn't specify the date it was put out there. The todo list has 7 items on it, but no info on how long they've been there or which ones are most important.

Come to find out that Chora 2.0 (currently release candidate 1) is supposed to support Subversion. One of the Chora developers mentioned that it should support Subversion 1.0, but it was built off of 0.something.

Overview ]

mod_dav_svn

The mod_dav_svn Apache module comes with Subversion. It supports a top-level (latest revision) read-only view of a particular repository. The point of this tool is that it provides access to repositories on a remote server. Personally, I'd like to have a tool that encapsulates this capability because it's very limiting. If another tool provided the WebDAV support, I'd drop this module without hesitation. That way, I could use it to access the code.

One nice feature seems to be the fact that you can create custom XSL files to format the output. I haven't played with it considering I'm hoping to find a better tool, but XSL is very flexible, given the right “hooks” into the code.

Overview ]

mod_svn_view (Go)

This tool seems to be mod_dav_svn with the added benefit of speedier transactions. Everything else seems to be the same - well, I'm not sure if it supports WebDAV or not, tho. I'm assuming not.

I did receive some info on other features that this tool supports (revision browsing, diffs, and RSS). There's also supposed to be a demo available, but I wasn't able to get to it. Perhaps it'll be up later.

Overview ]

SVN::Web (Go)

Well, for some reason, I've convinced myself that this is in the top 3. The problem is that I have no idea why. Nonetheless, I refuse to just give up. I finally found a demo site. I don't think I can stress the “finally” enough. I must say that the biggest problem with SVN::Web is finding more information on it. That leads me to believe that it's not widely used.

After taking a look at the demo, I'm kind of leaning away from it. Basically, it looked like mod_svn_view with a pretty template and the capability to view multiple revisions and diff with one previous version of each file revision. I wasn't able to see the RSS output, so I couldn't tell you what that looks like. I saw somewhere online that someone said it was sufficient, but had a lot of room for improvement.

Overview ]

ViewVC aka ViewCVS (Go)

My initial thoughts on ViewVC ViewCVS were that it would probably be the best tool since it has twice the community to push forward with development and feature additions. After looking at it, tho, I think I was wrong. Considering it hasn't been updated since Jan 2002, I would be very weary to implement such a solution. I like some of the features it has, but almost 3 years isn't good enough in my eyes. Moving on...

Looks like ViewCVS packed it up and moved over to Tigris (from SourceForge). Along with the move, the project has been renamed to ViewVC. I haven't been able to access the Tigris site, so I can't give too much of an update, but I am very curious as to what upgrades may be in the future.

I've been told that ViewCVS is under continuous development, despite the long time span since the tool's last release. And, even with revision and branch support, I still question it's feasibility. I guess part of that is based on it's python code-base. If you know python, however, this could be a great option for you.

Overview ]

ViewSVN (Go)

First and foremost, let me point out that, in the words of the ViewSVN developers, "If you are looking for a feature-rich and robust Subversion repository browser, this one is not for you. Try ViewCVS instead." Well, that about sums it up. There is a demo available, but it is seemingly lack-luster.

The last time I tried the demo, the link was broken. For anyone looking for another demo, try this one. I haven't noticed any improvements, but the tool has been updated. Then again, moving from a 0.0.6 to 0.0.8 release in a year tells me not to expect too much.

Overview ]

WebSVN (Go)

The activity of this project seems to be pretty good, but it died off in August 2004. There are 7 posted issues, 1 from June and the rest from October and November (the last one, #14 was from Nov 22, the day I initially posted this article). The only thing I'm wondering is how much the tool is used. Of course, I'd like to go with a tool that is widely used and more importantly has a broad developer community. It has 50 observers and one project owner.

After taking a look at some of the demos (1, 2, 3), I came up with the following list of reservations about the tool.

  • I like the look and feel... very nice - I still wonder how customizable it is, tho
  • I like the list of modified and new files, but would like to see a marker on the file icon in addition to the list of files
  • Diff only supported for previous version (see comment 17617)

The demo doesn't seem to be available right now and no updates have been made since my last look at the tool. Choosing the best tool seems to be getting easier and easier. Don't know if that's good or bad, tho.

Overview ]

My Conclusions

[Dec 8, 2005]
I'm on a new project and figured I'd revisit this comparison to see if anything new has come around. Unfortunately, I'm not seeing anything. Some contendors seemed to have all but dropped out of the race, while others have provided updates, yet remained feature stagnant from what I can tell. I'm not in dire need of a tool, tho, so perhaps I'll just put it off for a while.

Looks like the top dogs are SVN::Web and ViewVC (aka ViewCVS) with Chora and ViewSvn close behind.

[Dec 2004]
Hopefully, everyone will come to their own conclusion based on this and other reviews. As a matter of fact, let me know if there are any other reviews or data updates and I will gladly link to them and/or update my data. I believe that I've decided to go with Chora, though. Chora just seems to be the most mature and fully functional. I was minimalistic when comparing features, but Chora seemed to have the best of breed. I may be asking for it by deciding on a tool built for CVS, but only time will tell. I will be playing with the 2.0 RC2 release at first. Based on their recent history, I expect the stable 2.0 release to come by end-of-year (this is my assumption, nobody has implied this).

[Nov 2004]
My review led me to believe that the mod_dav_view was the only tool that supported WebDAV. That kind of sucks because I don't really like the way it handles requests. Oh well. I guess it's time to get over that. After a brief glance over the tools, the three that seemed the most feasible were Chora, SVN::Web, and WebSVN.

Other Tools and Utilities

Here's a list of useful tools and utilities that I've found that relate to web-based Subversion (and maybe other) tools. Hopefully you find them useful, too.

mod_authn_dbi
Provides Authentication against an SQL database back-end. It uses the application-independent abstraction layer provided by libdbi.
mod_highlight
A Syntax Highlighting Filter Module for Apache 2.0.
GNU Enscript
GNU enscript converts ASCII files to PostScript and stores generated output to a file or sends it directly to the printer. It includes features for `pretty-printing' (language-sensitive code highlighting) in several programming languages.
posted on Monday, November 22, 2004 9:14 AM

Feedback

# re: Comparison: Subversion Web Access Apps 12/14/2004 8:27 PM belmo
Regarding websvn, you wrote:
> Diff only supported for previous version
Granted, the websvn navigation is poor, but I seem to be able to get diffs between any revisions.


# re: Comparison: Subversion Web Access Apps 12/20/2004 2:54 AM Bernd
One word about ViewCVS:
It is true that the last official release is very old, but ViewCVS is being actively developed, the current cvs snapshot works with all versions. To fill up your table: It also hast Revision and Branch support.
I am in no way affiliated with ViewCVS, just a happy user.

Cheers
Bernd


# re: Comparison: Subversion Web Access Apps 12/20/2004 12:07 PM Michael Flanakin
Thanks for the info, guys...

# re: Comparison: Subversion Web Access Apps 1/24/2005 11:02 AM one
I'm also in the process of evaluating Subversion browsers. I was quite keen on Chora too, but was put off by the Horde prerequisites. Im sure its a decent framework, but to get it working id have to; recomplie PHP, install a bunch of pear and pecl libs, sort out a mysql database and mess about with its config files. Maybe I'm being lazy but it all seems a bit overkill just to be able to browse my repository via the web. Chora would be fantastic if you could just extract it, edit the conf file and have it run straight away. But the bloat of all the Horde stuff was a dealbreaker for me.

I'm now looking at WebSVN, which doesnt seem as advanced as Chora, but its lightweight and looks pretty tweakable.

# re: Comparison: Subversion Web Access Apps 2/12/2006 8:12 AM Olly
take a look at smartsvn it has a free version

# re: Comparison: Subversion Web Access Apps 2/13/2006 4:24 AM Michael Flanakin
SmartSvn isn't a web access tool - only a desktop tool. I will say that SmartSynchronize is a great tool, tho!

# re: Comparison: Subversion Web Access Apps 3/20/2006 9:58 AM aaron
Excellent work ~ very informative.

I just installed websvn after...oh...1.5 years of diddling and looking at various options.

It took about 3 hrs to get it running both on IIS6 and Apache. (apache currently serves the plain vanilla web access on the box)

And it may very well be only my lack of expertise in tuning php/apache/iis...but browsing websvn pages is very slow (15-20 seconds each) Of course, pages served directly from apache are snap-quick, so I'm sure it's not "just" the box. Hmm.

Did you ever decide/impliment a solution?

# re: Comparison: Subversion Web Access Apps 3/20/2006 10:03 AM Michael Flanakin
No, I haven't implemented any. I started to implement Chora and ran into quite a few problems. That was when I initially did this review, tho, so I can't say how it acts, now. I re-looked at this last December because we were thinking about implementing it here, but it just hasn't been a priority, so I've been focusing on other things.

# re: Comparison: Subversion Web Access Apps 4/27/2006 5:36 AM vchau
Hello,

I have been reviewing Subversion and cvs systems for the last few days and my head is spinning. I don't even know where to start or if I trust myself to install subversion. I would like to install it on a web server with one of the aforementioned tools to access via a browser. I am not sure if it is appropraite to post here, but I will do anyways and you can remove this if it is not appropriate. I would like to see if I could commission you (author) to set this up for our business. We have a very large project we are just starting and we really need this installed. If you are interested, please contact me at jah_liveth@hotmail.com (once you contact me there, I can provide my regular email address). Thanks in advance for any possible assistance.

# re: Comparison: Subversion Web Access Apps 4/27/2006 6:02 AM Michael Flanakin
Yes, that would definitely be possible. I will contact you later today, when I get back in the office.

# re: Comparison: Subversion Web Access Apps 8/26/2006 5:23 AM joey
As perlworld write the Trac Integrated SCM and Project Management system is maybe the best svn browser. It's really versatile with great design and it can use more source code highlighter. I love it!

# re: Comparison: Subversion Web Access Apps 9/12/2006 6:44 AM Anonymous
Bounty Source SVN Browser is implemented using Ruby on Rails and has heavy use of AJAX. It looks pretty sweet and it went Open Source not too long ago.

# re: Comparison: Subversion Web Access Apps 7/11/2007 3:38 AM Daryl
I like Trac, I think it's the most confortable one after trying sevral tools...

# re: Comparison: Subversion Web Access Apps 9/2/2007 10:16 AM Michael Sinz
Have you looked at Insurrection tools? The main goal of that project was to have the web URLs match, exactly, the Subversion checkout URLs. This system basically overlays on top of the Subversion mod_dav_svn interface.

# re: Comparison: Subversion Web Access Apps 4/6/2008 8:53 PM Martin
Check out http://sharpforge.org/p/SharpForge.aspx, it uses svn to store its wiki data.

# re: Comparison: Subversion Web Access Apps 6/1/2009 8:42 AM Aleksander
Is there a reason why you don't include Fisheye[1] in the comparison?

[1] http://www.atlassian.com/software/fisheye/

# re: Comparison: Subversion Web Access Apps 10/8/2009 8:53 AM Eduardo Costa
Great post! Unfortunatelly, it was last updated in 2005... Any chances of updating it?

# re: Comparison: Subversion Web Access Apps 10/20/2009 4:07 PM Design my blogs
Great information. Thanks!

Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification: