Tag: SVN
Tutorial básico de Subversion
by kaizo on Dic.01, 2008, under Subversion, Tutoriales
Subversion es un sistema gestor de versiones. Se usa para mantener el historial de ficheros tales como código fuente, páginas web y documentación. dGil me pidió que lo instalara para usarlo con Pynigma y que realiza un tutorial básico.
- Instalación
Para sistemas Debian basta con hacer:
aptitude install subversion
Para Sistemas Operativos diferentes se puede acceder a la web y bajarse el archivo correspondiente:
http://subversion.tigris.org/
- Crear un repositorio
Para crear un repositorio en un directorio llamado “repositorio” haremos:
svnadmin create repositorioEsto creará una carpeta nueva (si no existía antes) que contendrá varios ficheros y carpetas que sirven para cambiar la configuración del repositorio creado (usuarios, permisos de acceso, etc) pero si tenemos el repositorio solo para úso personal, ya sea para llevarlo en un pen o tenerlo en el ordenador, no necesitamos tocar ninguno de esos archivos.
- Hacer un envío inicial al repositorio
Supongamos que tenemos el proyecto que queremos manejar con Subversion en el directorio $HOME/Pynigma
Para guardar todo lo que esté dentro de la carpeta Pynigma en el repositorio usaremos el comando import. El comando completo es:
svn import file:///ruta_repositorio/ $HOME/Pynigma -m "mensaje_import"
mensaje_import es un mensaje que saldrá al consultar el repositorio del log, normalmente querrás poner algo como “Importación inicial FECHA_IMPORTACION”
o algo del estilo.
- Hacer una descarga inicial del repositorio
Primero creamos una carpeta donde vamos a descargar el repositorio con
mkdir carpeta_proyectoAhora usaremos checkout para copiar a carpeta_proyecto todo lo que haya dentro del repositorio
svn checkout file:///ruta_repositorio/ ./carpeta_proyecto
- Trabajar con la copia local del repositorio
Una vez hecho lo anterior se habrá descargado todo lo que hay en el repositorio y unas carpetas ocultas (en UNIX) .svn en cada directorio del repositorio (Estas carpetas controlan los cambios en el repositorio y el lugar donde está el repositorio)
Ahora ya podemos hacer cambios en los archivos copiados (normalmente archivos código fuente) y Subversion se encargará de vigilar los cambios. Podemos crear directorios que Subversion controlará con (suponiendo que estamos dentro de la copia del repositorio)
svn mkdir nuevo_directorio
También podemos crear archivos nuevos dentro del repositorio (algún módulo nuevo del programa, por ejemplo) pero si no le decimos a Subversion que controle ese archivo simplemente hará cómo si no estubiera ahí. Para añadir nuevos archivos bajo el control de Subversion usaremos
svn add nombre_ficheroPodemos controlar todos los cambios que llevemos hechos con
svn statusPara ver con más detalle los cambios hechos en archivos de texto que ya hemos bajado
svn diff
Muy bién, ahora hemos modificado algunos archivos, creado nuevas carpeta, creado archivos nuevos, y podemos ver los cambios, pero ¿Cómo subir estos cambios al repositorio? Haremos eso con:
svn commit -m "mensaje informativo"