¿Cómo implementar la ruta / svn-history / como lo hace Google Code Hosting?

Cuando publica un repositorio de Subversion a través de Apache Httpd, obtiene una función adicional: puede explorar la revisión HEAD de sus fuentes con cualquier cliente HTTP.

Por ejemplo, tenemos este repositorio:

http://trash-cli.googlecode.com/svn/trunk/

Con cualquier cliente HTTP (por ejemplo, Firefox) puede examinar los archivos en la revisión HEAD. El svnbook explica muy bien cómo hacerlo.

But Google Code Hosting ofrece una función adicional: también puede navegar por las revisiones anteriores. Por ejemplo, puede examinar la revisión de r10:

http://trash-cli.googlecode.com/svn-history/r10/trunk/

¿Sabes cómo Google hace eso? ¡Quiero esta característica en el repositorio de mi empresa también! :)

Gracia

Update 1

El siguiente comportamiento puede ayudarnos a resolver el problema. Si visito una ruta que no existe en el repositorio, por ejemplo

http://trash-cli.googlecode.com/svn-history/r10/non-existent

Recibí el siguiente error 404:

Extraviad

La URL solicitada / svn /! Svn / bc / 10 / inexistente no se encontró en este servidor.

Sospecho que hay una regla de reescritura de URL debajo de la escena.

Update 2

Tenga en cuenta que esto no es lo mismo deesta pregunt. Quiero exponer este servicio en el repositorio de mi empresa de una manera que sea cómoda para el usuario de una manera que lo hace Google Code, no me interesa cómo obtener una revisión anterior en un repositorio externo que no tiene esta característica. Estoy usando la perspectiva del proveedor de servicios, no la perspectiva del usuario. Quiero hacer la vida más fácil a mis colegas.

Respuestas a la pregunta(4)

Su respuesta a la pregunta