¿Cómo crearía un proyecto de inicio de plantilla para usar en Mercurial?

Estoy investigando el uso de Mercurial para nuestro sistema de control de fuente de empresas. Un requisito inmediato es la capacidad de tener un proyecto de plantilla que tenga una gran cantidad de código que reutilicemos incorporado y permitir que otros desarrolladores lo usen como punto de partida para sus proyectos.

Por ejemplo, hago mucho desarrollo de asp.net mvc 2 en nuestra compañía. He creado varios helpers html, classs de extensión, creación de pdf y utilidades de logging. Dudo en moverlos a su propio proyecto y hacer reference a ese dll ya que las necesidades de cada proyecto son muy diferentes. Me gustaría tener una especie de proyecto de plantilla básica con todas estas cosas en ellos. Cuando un compañero de trabajo va a crear un nuevo proyecto, me gustaría que puedan desplegar este código, pero no quiero que cambien la plantilla (aunque me gustaría poder hacer cambios en la plantilla). … No quisiera que lo hagan en este caso).

¿Cómo voy a hacer esto?

Me disculpo si la pregunta es confusa. Soy nuevo en mercurial. He pasado por el http://tekpub.com/codeplex video y estoy a punto de revisar el http://hginit.com/index.html tutorial de Joel, pero quería poner este caso de uso allí para ver cómo algo así podría ser logrado.

Una solución sería tener un repository público de solo lectura con su código de plantilla.

Cuando los desarrolladores comienzan un nuevo proyecto, simplemente clonan el repository de templates y comienzan a trabajar.

Como la plantilla es de solo lectura, no pueden enviar cambios que afecten a la plantilla. Idealmente, deberían cambiar la URL de extracción pnetworkingeterminada en .hg/hgrc para que apunte a una nueva location específica para ese proyecto.