subversion

Páginas: 7 (1606 palabras) Publicado: 12 de noviembre de 2013


SUBVERSION







INTRODUCCION
Un sistema de control de versiones es un software que administra el acceso a un conjunto de ficheros, y mantiene un historial de cambios realizados. El control de versiones es útil para guardar cualquier documento que cambie con frecuencia, como una novela, o el código fuente de un programa.
Normalmente consiste en una copia maestra en un repositoriocentral, y un programa cliente con el que cada usuario sincroniza su copia local. Esto permite compartir los cambios sobre un mismo conjunto de ficheros. Además, el repositorio guarda registro de los cambios realizados por cada usuario, y permite volver a un estado anterior en caso de necesidad.
DESARROLLO
Pero, ¿que hacer cuando dos usuarios intentan modificar el mismo fichero?. Existen dosestrategias:
Bloqueos: el usuario bloquea el fichero durante su edición, evitando el acceso concurrente de otros usuarios. Existen varios problemas: el usuario que acapara ficheros, el interbloqueo entre usuarios que necesitan varios ficheros, y la falta de concurrencia.
Merge (fusión de cambios): los ficheros se acceden concurrentemente. Los cambios realizados sobre un mismo fichero son fusionadosinteligentemente por el sistema. El único problema es el intento de fusión de cambios incompatibles, que ha de solucionarse manualmente.
Existen multitud de sistemas de control de versiones, pero sin duda, el más popular es CVS (Concurrent Versions System). CVS tuvo el merito de ser el primer sistema usado por el movimiento de código abierto para que los programadores colaboraran remotamentemediante el envío de parches. Es de uso gratuito, código abierto, y emplea fusión de cambios.
Subversion se creó para igualar y mejorar la funcionalidad de CVS, preservando su filosofía de desarrollo. Su desarrollo comenzó en el año 2000 como proyecto de código abierto esponsorizado por CollabNet. El líder del equipo de desarrollo fue Karl Fogel, autor de Open Source Development with CVS, y fundadorde Cyclic Software (compañía de desarrollo y soporte comercial para CVS, hoy adquirida por SourceGear). La versión 1.0 fue publicada en febrero del 2004. Emplea licencia Apache/BSD.
¿Por qué son necesarios?
Supongamos que estamos haciendo un programa de cierto tamaño en colaboración con otra persona. Lo más primitivo es compartir cambios usando ficheros comprimidos. Pero este sistema espropenso a errores: ¿estamos enviando todo el código?, ¿estamos sobrescribiendo algún cambio?, ¿que ficheros debemos actualizar?, ¿quien tiene la versión maestra del código?
Todos los sistemas de control de versiones tienen ciertas características que acaban con estas preocupaciones. Esto es lo que aporta un sistema de control de versiones a un equipo:
Actualiza ficheros modificados. El cliente recorrenuestro código y sincroniza nuestra copia local con el repositorio.
Copias de seguridad centralizadas. Solo el administrador debe preocuparse de realizar copias de seguridad en el repositorio. Esto se automatiza fácilmente con una tarea cron o similares.
Historial de cambios. El repositorio guarda registro de todos los cambios realizados. Es posible recuperar cualquiera de las versionesanteriores de cualquier fichero. Si alguien borra todos los ficheros, podemos volver atrás y recuperar su contenido.
Acceso remoto. Es posible acceder remotamente al repositorio. No es necesario que el equipo este dentro de la misma LAN.
Seguridad. Es posible otorgar diferentes permisos sobre diferentes ramas del proyecto. Por ejemplo, estableciendo permiso universal de lectura, y permiso de escriturasolo a ciertos usuarios.
Desarrollar un proyecto de software implica invertir mucho tiempo y dinero. No proteger nuestra inversión con un sistema de control de versiones es irresponsable y denota un grave desconocimiento del desarrollo de software.
¿Por qué SVN?
Si eres desarrollador seguramente conocerás CVS. Se emplea en la mayoría de proyectos comerciales, y prácticamente en todos los de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Subversion
  • Subversion
  • subversion
  • Subversion
  • subversión
  • subversion
  • Subversion
  • Subversión y contra subversión

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS