Subversion es una herramienta de control de revisiones muy popular, desarrollada para reemplazar a CVS, con el objetivo de mejorar algunos aspectos que dificultaban el uso de la aplicación. Tiene una arquitectura centralizada tipo cliente/servidor
Subversion es una herramienta de control de revisiones muy popular, desarrollada para reemplazar a CVS, con el objetivo de mejorar algunos aspectos que dificultaban el uso de la aplicación. Tiene una arquitectura centralizada tipo cliente/servidor
Las características fundamentales son:
•Número de versión global al repositorio que se incrementa con cada cambio, por lo que es posible volver a una versión anterior indicando dicho número global.
•Control de cambios en ficheros y directorios (si, almacena y controla cambios en árboles completos de carpetas y ficheros). Mantiene el histórico de versiones de un fichero aunque se mueva o renombre.
•Detecta y trata apropiadamente los ficheros binarios, uno de los puntos débiles de CVS. A estos ficheros les añade una propiedad indicando su tipo.
•La transmisión entre cliente y servidor incluye únicamente los cambios lo que supone un ahorro del ancho de banda. Además, los cambios se calculan a nivel de byte (en lugar de línea ampliamente usado) lo que reduce aún más el tamaño de las modificaciones.
Svn co ruta_repositorio [destino]
Descarga una copia (checkout) de cualquier carpeta contenida en el repositorio (no es necesario bajar la raíz del repositorio, se puede bajar cualquier carpeta contenida en el mismo) que se denominará copia de trabajo. La copia de trabajo son ficheros locales en la máquina por lo que puede ser modificada según se desee.
Las rutas de repositorio tienen la forma protocolo://usuario:password@servidor/ruta. Existen múltiples protocolos como Webdav, svn (protocolo propio), svn+ssh (protocolo svn a través de un túnel ssh para asegurarlo.
Svn update
Se encarga de descargar los últimos cambios del repositorio y mezclarlos en la copia de trabajo para que coincida con la última versión disponible.
Si en el proceso de mezcla se detectan conflictos irresolubles, se marcan en la copia de trabajo para que el usuario los resuelva. De esta forma, se evita corromper el repositorio.
Svn ci [ruta]
Cuando se finalizan los cambios se envían al repositorio (commit). En este momento, se comprueba si la versión base del usuario es la última del repositorio y si es así se envían los cambios creando una nueva revisión.
Si las versiones no coinciden, el usuario deberá actualizar (update) su copia de trabajo con lo que se marcarán los conflictos en la copia de trabajo
Además de este cliente de consola, existen aplicaciones gráficas que realizan ese trabajo de forma transparente y más agradable para el usuario.
Por su parte, es posible atacar al servidor utilizando distintos clientes independientemente de la plataforma en la que ejecute cada uno de ellos. Es posible utilizar un cliente en Windows que se conecte con un servidor en Unix o Mac y viceversa, también se puede integrar Subversion a distintas plataformas de desarrollo que funcionan como clientes como netbeans, eclipse, Dreamweaver.
Si se utiliza Windows, la opción más adecuada es TortoiseSVN. Es un cliente que se integra con el explorador de Windows y que permite realizar todas las acciones mediante entradas en el menú contextual de los ficheros y carpetas. Igualmente las plataformas mencionadas anteriormente igual son clientes gráficos que permiten esta integración.
Para el escritorio KDE existe un plugin similar denominado kdesvn aunque no implementa toda su funcionalidad. Sin embargo, para un uso habitual es suficientemente útil.
jueves, 10 de diciembre de 2009
Suscribirse a:
Enviar comentarios (Atom)

No hay comentarios:
Publicar un comentario