Con el fin de construirme mi propio entorno XP, voy a empezar por un Sistema de Control de Versiones. He elegido Subversion por su madurez, buena integración con Eclipse via
Subclipse, y por que tengo experiencia usándolo en mi trabajo.
Siguiendo el principio de no repetirse a simismo, ni a buenos trabajos anteriores, os dejo de los muchos artículos de como instalar SVN en Debian este gran
post by pasyonic. Pero como siempre os dejo mi chuletilla personal.
Instalando las herramientas necesarias:
apt-get install subversion libapache2-svn
Creando un repositorio de proyectos:
mkdir /var/repos
Permisos:
chown -R www-data:www-data /var/repos
Configurando WebDav-SVN para Apache en /etc/apache2/mods-available/dav_svn.conf:
DAV svn
SVNParentPath /var/repos
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
Tenemos que insertar usuario /contraseña (encriptada con md5) para cada usuario que quieras que tenga acceso R/W a todos los repos:
htpasswd -cmb /etc/apache2/dav_svn.passwd juanan
Reinicia el Apache para recargar las configuraciones.
Podemos crear nuestro primer repo con:
svnadmin create /var/repos/myproject
Importante ¡¡¡ vuelve a dar los permisos para que pueda acceder el usuario de apache:
chown -R www-data:www-data /var/repos/myproject
Recomiendo encarecidamente usar el clásico árbol branches/tags/trunk para tus repos. Casitodo el software toma las versiones a partir de este árbol, y es una muy buena convención para los desarrollos.
En este momento puedes acceder a tu report via http://www.yourdomain.com/repos/myproject. Puedes hacer checkout, commit,... con el usuario juanan.
Si quieres administrar usuario para cada proyecto, los permisos que tendrán, debes añadir estas líneas a /etc/apache2/mods-available/dav_svn.conf:
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
Creando un fichero con contenidos como el siguiente:
[myproject:/]
@admin = rw
[groups]
admin = juanan
Tortoise es un gran cliente de SVN para windows, que se integra muy bien con el explorador de archivos..
Subclipse una buena opción para tu Eclipse.
The Subversion Book, si queres aprenderlo todo sobre SVN.
WebSVN un buen administrador LAMP para tus repos..