Control De Versiones Cvs
|
Integrantes:
* Olman Camacho Cambronero
* Iván Rojas Granados
* Jonathan Aguirre Mata
* Jeison Solano Abarca
* Francisco Monge Pacheco
Integrantes:
* Olman Camacho Cambronero
* Iván Rojas Granados
* Jonathan Aguirre Mata
* Jeison Solano Abarca
* Francisco Monge Pacheco
|
Programas para control de versiones |
|
Tabla decontenido
Introducción 2
Marco conceptual 3
Desarrollo 5
Un sistema de control de versiones debe proporcionar: 5
Podemos clasificar los sistemas de control de versiones atendiendo a la arquitectura utilizada para el almacenamiento del código: 6
Ventajas de sistemas distribuidos: 6
Ventajas de sistemas centralizados 7
Flujos de trabajo 8
Flujo de trabajo centralizado 8
Flujo detrabajo con un Gestor de Integraciones 9
Flujo de trabajo con Dictador y Tenientes 9
Evolución de algunas herramientas Opensource para el Control de versiones: 15
Conclusiones 22
Apéndice 23
Instalación de un servidor svn 23
Fuentes 33
Introducción
Mediante el presente documento se pretende aprender los conceptos más importantes de los sistemas de control de versiones en general, asícomo mostrar las principales características particulares de los programas de control de versiones.
Marco conceptual
Commit: Realizar un cambio en el proyecto. Formalmente, almacenar un cambio en la base de datos del control de versiones de forma que pueda ser incorporado en lanzamientos futuros del proyecto.
Mensaje de registro: Un pequeño comentario añadido a cada commit que describe el tipoy el propósito del commit. Los mensajes de registro forman parte de los documentos más importantes de cualquier proyecto ya que son un puente entre el lenguaje altamente técnico de los cambios individuales en el código y el lenguaje más orientado al usuario de características, resolución de fallos y progreso del proyecto.
Update: Solicitar los cambios (commits) que han realizado otros en la copialocal del proyecto, esto actualiza esta copia a la última versión. Es una operación muy común ya que la mayoría de los desarrolladores actualizan su código varias veces al día y así saben que están ejecutando casi lo mismo que los otros desarrolladores, así que si se descubre un fallo es muy posible que este aun no haya sido resuelto.
Repositorio: Una base de datos en la que los cambios sonalmacenados. Algunas versiones de sistemas de control de versiones son centralizados, es decir, existe un único repositorio maestro, el cual almacena todos los cambios en el proyecto. Otros sistemas son descentralizados, cada desarrollador tiene su propio repositorio y los cambios pueden ser intercambiados entre repositorios arbitrariamente. El sistema de control de versiones mantiene un registro delas dependencias entre estos cambios y cuando llega el momento de realizar un lanzamiento, un conjunto particular de cambios es aprobado para ese lanzamiento.
Checkout: El proceso de obtener una copia del proyecto desde el repositorio. Por lo general, un checkout produce un árbol de directorios llamado "copia funcional" desde el cual los cambios serán enviados de vuelta al repositorio original. Enalgunas versiones descentralizadas de sistemas de control, cada copia funcional es en sí mismo un repositorio y los cambios son empujados (o atraídos) a cualquier repositorio que esté dispuesto a aceptarlos.
Copia funcional: El árbol de directorios privado de cada desarrollador que que contiene el código fuente del proyecto y posiblemente las páginas web u otros documentos. Una copia funcionaltambién contiene un pequeña cantidad de meta-data administrada por el sistema de control de versiones, informando a la copia funcional cual es repositorio central de procedencia, la revisión de los ficheros presentes, etc. Generalmente, cada desarrollador tiene su propia copia funciona en la cual realiza y prueba los cambios y desde la cual envía sus commits (cambios).
Desarrollo
Un sistema...
Regístrate para leer el documento completo.