Instalación dun sistema Trac con Subversion

De Wiki do Ciclo ASIR do IES de Rodeira
Saltar á navegación Saltar á procura

Introducción

Trac é unha interface web para sistemas de control de versións como git ou subversion e un xestor de incidencias, documentación wiki sobre o proxecto e xestor de desenvolvemento mediante hitos ou obxectivos. Con todo esto, é unha ferramenta de desenvolvemento colaborativo moi potente e de fácil uso, permitindo aos usuarios ver o código fonte dos proxectos e os seus cambios.

Instalaremos Trac en un sistema Debian Jessie, e automatizaremos no posible a creación de proxectos e a descarga dos mesmos dende o propio interface web.

Subversion é un sistema de control de versións que habilita a colaboración na elaboración de proxectos, levando un rexistro de cambios e permitindo a solución dos conflictos que poidan xurdir na edición simultánea. Aínda que git se está a impoñer hoxe en día como o sistema de control de versións dominante, subversion é aínda ampliamente utilizado e moi axeitado para a maior parte de proxectos.

Estructura

A estructura a empregar no noso sistema de desenvolvemento a partir do raíz da súa instalación, que poderá ser calqueira, será a seguinte:

[dir] scripts
      configure.sh
      SvntoTarGz.sh
      maketracrepo.sh
      post-commit
      post-repvprop-change
      trac.fcgi
[dir] downloads
      [dir] proxecto_A
      [dir] proxecto_B
      ...
[dir] trac
      [dir] common
            [dir] htdocs
                  [dir] site
                  [dir] common
      [dir] trac_site_proxecto_A
      [dir] trac_site_proxecto_B
      ...
[dir] svn_repo_proxecto_A
[dir] svn_repo_proxecto_B
  ...

A carpeta scripts almacenará os scripts para a automatización da creación de novos proxectos e das descargas asociadas. Os ficheiros e o seu cometido son os seguintes:

configure.sh
Almacena os valores de entorno da instalación do sitio para os proxectos. Por exemplo, no caso do IES de Rodeira:
REPOUSER="xavi"
REPOPATH="/home/xavi/repos"
ABSOLUTE_PATH=$(cd `dirname "${0}"` && pwd)
VIRHOST="repos"
VIRDOMAIN="iesrodeira.com"
Boxinfo info.png
ABSOLUTE_PATH sempre debe almacenar o PATH completo da posición onde se atopan os scripts.
SvntoTarGz.sh
Este script se chama de xeito automático cando no comentario dun commit de subversion se indica #RELEASE(version), e crea un ficheiro .tar.gz con firmas md5 e sha1. O nome dos ficheiros e firmas será proxecto.version.tar.gz, proxecto.version.md5 e proxecto.version.sha1. Tamén manten os enlaces simbólicos latestsource e latestmd5 apuntando aos últimos ficheiros xerados.

Instalación

Trac e Subversion

Configuración de Apache

Scripts

Exemplo

Sitios de Interese

Páxina Oficial de Trac

Páxina Oficial de Subversion

Uso de Subversion