Description

There should be a way to browse history and files in the repository from the web.

At a minimum, this means:

Ideally, the web interface would be customisable, allowing us to tailor it to the FreeBSD site look-and-feel. Similarly, it should be possible to localise the interface to multiple languages, as the rest of the FreeBSD web site is also localised.

Current Implementation

Currently cvsweb.cgi is used, as can be seen at freebsd.org

SVN Implementation

One of the access mechanisms that can be enabled for a Subversion repository is http (or https). This does not have to be enabled, but if it is it would provide a basic web interface for free. This interface would allow browsers to see the most recent version of files and directories and check them out, but not view diffs, changelogs, and so on, in the browser.

There are a large number of third party applications that generate prettier web interfaces to Subversion repositories.

NikClayton is the maintainer of SVN::Web, a Perl implementation that runs as either a CGI or a FastCGI script under any web server, and as both a mod_perl1 and mod_perl2 handler with Apache. SVN::Web's interface is template driven (making it easy to adapt to the FreeBSD web site look and feel), can apply regular expressions to log messages before they are output (making it easy to create links between log messages and GNATS tickets, or other web pages) and is fully localised, making it a simple matter of translating doc strings to render the interface in multiple languages. An example of SVN::Web in action can be seen at http://jc.ngo.org.uk/svnweb/.

There are many other Subversion web interfaces listed at http://subversion.tigris.org/links.html

Hg Implementation

There are several ways to browse a Hg repository through the web:

See examples on http://hg.fr.freebsd.org/ and http://archives.keltia.net/hg/

Git Implementation

The canonical git web interface is gitweb. Examples can be seen at kernel.org or freedesktop.org

VCSFeatureWebInterface (last edited 2008-06-17 21:37:25 by localhost)