MANEJADORES DE CONTROL DE VERSIONES

Slides:



Advertisements
Presentaciones similares
Metodología de programación paralela
Advertisements

Carlos Armas Roundtrip Networks Corp.. Instalar y proveer sistemas rápido! Eliminar tareas repetitivas La configuración de los sistemas tiende a la divergencia.
Prof. Carlos Rodríguez Sánchez Texto: Networking A Beginners Guide Bruce Hallberg Introducción a la Seguridad en las Redes.
La plataforma abierta para la gestión de contenidos críticos y la colaboración documental.
ADELACU Graballo APLICACIONES Desborde de Call Center Graballo Adelacu Ltda. AVIZA Grab all Desborde de Call Center.
Pasos a seguir para Utilizar las listas predefinidas por el I.N.E..... Generar sus propias listas.... Exportar la información a diferentes formatos....
Eurowin 2013 Gestión de Proyectos y Obras
DOCENCIA POSITIVA El modelo educativo del
OPEN ACCESS UNA APROXIMACIÓN
La Cultura de la Participación Comunitaria en pueblos indígenas de Oaxaca, un aporte al Nuevo Humanismo Escuela Nacional de Trabajo Social,UNAM, México.
PORTUS Y ASOCIADOS S.A. Sistema Integral Manejo Planta Logística Externalizada (SIMPLE) Fairware Ltda. Hi Tech Software Development
Conectores gramaticales
Dalia Gordon --G10 ESCUELA POLITÉCNICA DEL EJÉRCITO.
COMO USAR LA PC POR PIMERA VEZ SARAITH MACHORRO PACHECO 28 JOSE ALBERTO LOPEZ RAMIREZ 27 CAPACITACION DE INFORMATICA GRUPO 302.
copyright teddy gauthier
INTEGRIDAD, INTEGRIDAD REFERENCIAL
Nuevo sistema de alertas Gloria Guirado Departamento de formación de VCG.
Examen FRAD Empezar. 1. ¿Cu á l es la diferencia entre FRAD y FRANAR? 1.FRAD son las siglas de un grupo de trabajo de OCLC y FRANAR las siglas de un grupo.
Microsoft Office Power Point, es una herramienta que nos proporciona Microsoft, para editar presentaciones graficas, de tal forma que se nos feliciten.
QUE ES LA WEB 2.0 WEB 2.0 Y EDUCACION TIPOS DE HERRAMIENTAS WEB 2.0 HERRAMIENTAS Y EJEMPLOS DE APLICACION DONDE BUSCAR APLICACIONES WEB 2.0 VENTAJAS DE.
Servicios De Internet.. Integrantes: Gemma Cedillo Saucedo Delia Alejandra Castillo Almazán Jorge Alberto Arregoytia Garcia Adriana Lara Mata Aleida Villegas.
Hipertextos e interactividad en la entrega de Contenidos Educativos R e d d e P r o f e s o r e s I n n o v a d o r e s Módulo: Hipertextos e interactividad.
ClickMagic ClicMagic es la primera Affiliate Network en Chile y la única que ha desarrollado el exitoso modelo de Marketing de Afiliados en el mercado.
ADELACU Graballo Graballo Adelacu Ltda. AVIZA Grab all Integración con Collaboration Suite.
Libro de Clases Electrónico Administrativo OTEC
Prof. Juan Carlos Lima Colegio IPTCE. Antes de comenzar: ¿Qué es una red informática? ¿Qué ventajas tiene instalar una red informática? ¿Qué servicios.
Jesús López Martín ¿Qué es RDS? «Aplicativo para gestionar en múltiples Delegaciones la reserva y organización de múltiples salas.
EPI-Control Programa para la Vigilancia Epidemiológica Hospitalaria Ampliada y el Control de Infecciones Versión 7.0 Contacto Teléfono.
NOVEDADES LÍNEA VERDE LANZAMIENTO APLICACIÓN MÓVIL Y SISTEMA DE COMUNICACIÓN DE INCIDENCIAS EN EL EQUIPAMIENTO URBANO.
NUEVAS COMPERTENCIAS Alfabetización digital Sociedad de la información Uso de TIC Nueva cultura que supone nuevas formas de ver y entender el mundo Formación.
LUIS GONZALES SÁNCHEZ RESPONSABLE PROCESO DE REGISTRO DE DNI DE ESTUDIANTES UNIDAD DE GESTIÓN EDUCATIVA LOCAL LAMAS UNIDAD EJECUTORA 305.
Base de datos y Microsoft Access
EL SISTEMA OPERATIVO Presentación realizada por Virgilio Marco Aparicio Profesor de Apoyo al Área Práctica. IES Tiempos Modernos. ZARAGOZA.
XAGUAR AUTOMATION Xaguar Automation es una empresa Mexicana dedicada a la solución de problemáticas, orientadas al sector industrial en el área de automatización.
Visual basic Curso de Habilitación Laboral IV. ¿Qué es Visual Basic Visual Basic es uno de los tantos lenguajes de programación que podemos encontrar.
Avances de Microsoft PowerPoint y Office
ADMINISTRACION DE ARCHIVOS & ENTORNO DE WINDOWS
Servicio de Correo Institucional
Descripción general de Sharpdesk 3.1
Mejoras realizadas Cuando un visitante se desplaza por la ventana del navegador, los contenidos de la ventana normalmente se desplazan arriba o abajo.
MS Tutorial de Medidores RQ Consultoría Técnica, S de RL de CV Revisión 27 Septiembre 2008 Este Turorial le ayudará a entender: 1.¿Que es un medidor?
TALLER BÁSICO DE VISUAL BASIC Por: Juan Alfredo Garduño Arias.
Autodesk INVENTOR 2010.
MAPA DE NAVEGACIÓN. Los mapas de navegación proporcionan una representación esquemática, indicando los principales conceptos incluidos en el espacio de.
RECURSOS ESTÁTICOS. Recursos estáticos Activamos edición para poder añadir recursos Nombre corto Entramos en el curso.
CENTRO DE BACHILLERATO TECNOLOGICO INDUSTRIAL Y DE SERVIVCIOS No 3
CONSTRUCCIÓN Y ARQUITECTURA DEL SOFTWARE
Una visión de las Bibliotecas Digitales en Argentina" Elsa Elena Elizalde Coord. SISBI - UBA y Aurora Scavini Coord. BVSARG-ADOLEC Coord. BVSARG-ADOLEC.
Objetivos. Resolución 1422 Custodiar y gestar conciencia del patrimonio cultural y pedagógico existente en las escuelas promoviendo la creación de Archivos.
OBJETIVO ¡Bienvenidos! El curso piloto virtual para líderes comunales pretende fortalecer a las organizaciones comunales a partir de su reconocimiento.
Prof. Fidel Gonzales Quincho
¿Qué es la web 2.0 Web 2.0 y educación Tipos de herramientas web 2.0 Herramientas y ejemplos de aplicación ¿Dónde buscar aplicaciones Web 2.0?
Pilas Laboratorio de Programación II. Definición de pila Consideremos una pila de platos: Si se añade un plato a la pila, los que están más abajo son.
Sistemas de ventilación y aire acondicionado
Informática Extracurricular Universidad Nacional Arturo Jauretche.
Studio7i - Alquiler de salas de ensayo musical poo-rentalmusic
LA PERSPECTIVA PRAGMÁTIVA
TURISMO EN AUTOCARAVANA Vamos a intentar concentrar las ideas básicas del turismo en autocaravana El autocaravanismo es una nueva filosofía de vida única.
1.Origen del acompañamiento. Las condiciones educativas (como la cobertura, las condiciones actuales de los estudiantes), que hacen replantearse las nuevas.
Alojamiento Web y Seguridad Enero,
Animaciones en la Web Animación GIF Animación Shockwave Flash
1 Tutorial de Uso Metamorph: Montaje de videos. Unidad de Microscopia.
Hace referencia a cualquier proceso o fenómeno relacionado con los aspectos sociales y culturales de una comunidad o sociedad. De tal modo, un elemento.
O Skydrive o Características Características o Privacidad Privacidad o App App o Ventajas Ventajas o Desventajas Desventajas o Movie Maker Movie Maker.
Las consultas. Son cuadros de información generados a partir de datos relacionados encontrados en otras tablas que se utilizan para filtrar, ver, modificar.
CAPACITACIÓN DOCENTE Utilización de las Netbooks del Programa Conectar Igualdad Situación Institucional.
Circuitos Digitales II
Universidad Simón Bolívar Sistemas de Operación II (CI-4821) Intensivo 2014 MANEJADORES DE CONTROL DE VERSIONES David Prieto Karen Troiano
Ing. De la Puente, Matias Sistema de control de versiones GIT
Sistema de control de versiones CVS y Subvesion. Definición: Control de versiones Un sistema de control de versiones es un sistema de gestión de múltiples.
Transcripción de la presentación:

MANEJADORES DE CONTROL DE VERSIONES Universidad Simón Bolívar Sistemas de Operación II (CI-4821) Abril-Julio 2013 MANEJADORES DE CONTROL DE VERSIONES Carlos Gómez Pedro Romero

Temas: Sistema de control de versiones (SCV) Definición Conceptos Básicos Evolución Características Clasificación CVS, Subversion GIT

SCV / Definición Es un sistema que registra los cambios realizados sobre un archivo o conjunto de archivos a lo largo del tiempo, de modo que se pueda recuperar versiones específicas de los mismos en un determinado momento. Un SVC posee tres capacidades importantes: Reversibilidad: retornar a un estado anterior del proyecto en caso de fallas. Concurrencia: Muchas personas modificando el mismo código o documento. Anotación: Adjuntar información relevante de los cambios realizados.

SCV / Conceptos Básicos Repositorio: lugar en el que se almacenan los datos actualizados e históricos de cambios (sistema de archivos en un disco duro, un banco de datos, etc). Revisión: Versión determinada de la información que se gestiona. Tags: Permiten identificar de forma fácil revisiones importantes en el proyecto. Módulo: Conjunto de directorios y/o archivos dentro del repositorio que pertenecen a un proyecto común. Branch: Es una copia del proyecto aislada, de forma que los cambios realizados no afecten al resto del proyecto y vice versa, excepto cuando los cambios sean "unidos" de un lado al otro.

SCV / Conceptos Básicos Baseline: Una revisión aprobada de un documento o fichero fuente, a partir del cual se pueden realizar cambios subsiguientes. Checkout: crea una copia de trabajo local desde el repositorio. Commit: Consiste en realizar un cambio local en el proyecto y luego almacenar dicho cambio en el repositorio. Merge: Une dos grupos de cambios en un archivo (o grupo de archivos), generando una revisión unificada. Conflicto: Sucede cuando dos o más personas intentan realizar diferentes cambios en la misma porción de código.

SCV / Conceptos Básicos Update: Integra los cambios que han sido realizados en el repositorio en la copia de trabajo local. Change set: Conjunto de cambios realizados en un único commit.

SCV / Evolución

SCV / Características Un sistema de control de versiones debe proporcionar: Mecanismo de almacenamiento de los elementos que deba gestionar (ej. archivos de texto, imágenes, documentación...). Posibilidad de realizar cambios sobre los elementos almacenados (ej. modificaciones parciales, añadir, borrar, renombrar o mover elementos). Registro histórico de las acciones realizadas con cada elemento o conjunto de elementos (normalmente pudiendo volver o extraer un estado anterior del producto).

SCV / Clasificación Sistema de control de versiones locales: Información acerca de cambios se mantiene en un repositorio local.

SCV / Clasificación Sistema de control de versiones centralizados: Necesitan el uso de un servidor y repositorio central.

Sistema de control de versiones distribuidos: SCV / Clasificación Sistema de control de versiones distribuidos:  Permiten el uso de múltiples repositorios, y sincronización entre ellos.

CVS, Subversion Historia CVS: CVS surge como evolución de RCS. Paso de la primera generación a la segunda generación de manejadores. Expandir el alcance de los manejadores de un simple archivo a un conjuntos de archivos. Dick Grune y dos alumnos(1984 y 1985): - Uno era trabajador en el horario de 9 a 5. - El otro era muy irregular en sus horas de trabajo. - El profesor solo podía trabajar en las noches.  Brian Berliner (1989 – 1990): - Introduce el concepto de ramificación al control de versiones en CVS.

CVS, Subversion Historia Subversion: CollabNet (2000): - Busca reclutar un grupo de desarrolladores con intenciones de sustituir al CVS. - CVS para este momento es el manejador de control de versiones por default. - “Lo mejor que había en el momento”. - “El que ya todos estaban familiarizados”. CollabNet logra contratar a: - Karl Fogel, autor de Open Source Development with CVS. - Jim Brandy, quien ya tenía ya el nombre de “Subversion” en mente y también el diseño básico del repositorio de Subversion, en el que propone introducir el manejo de directorios al alcance de la herramienta.

CVS, Subversion Historia Subversion: No querían abrir nuevos caminos en la metodología del control de versiones, sólo querían corregir CVS. Subversion incorporaría las características de CVS y preservaría el mismo modelo de desarrollo, pero sin duplicar los defectos obvios de CVS. Debía ser lo bastante similar para que cualquier usuario de CVS pudiera hacer el cambio con poco esfuerzo.

CVS, Subversion Características CVS, Subversion: Versionado de directorios. - CVS solamente lleva el historial de ficheros individuales. - Subversion implementa un sistema de ficheros versionado “virtual ” que sigue los cambios sobre árboles de directorios completos a través del tiempo. Ambos, ficheros y directorios, se encuentran bajo el control de versiones.

CVS, Subversion Características CVS, Subversion: La solución copiar-modificar-mezclar: - Modelo del tipo copiar-modificar-mezclar como alternativa al bloqueo. En este modelo, el cliente de cada usuario se conecta al repositorio del proyecto y crea una copia de trabajo personal—una réplica local de los archivos y directorios del repositorio. - El sistema de control de versiones a menudo ayuda con la mezcla, pero en última instancia es un ser humano el responsable de hacer que esto suceda correctamente.  

CVS, Subversion Características CVS, Subversion: Verdadero historial de versiones: - CVS está limitado al versionado de ficheros, operaciones como copiar y renombrar no son soportadas. - CVS no puede reemplazar un fichero versionado con algo nuevo que lleve el mismo nombre sin que el nuevo elemento herede el historial del fichero antiguo. - Con Subversion, usted puede añadir, borrar, copiar, y renombrar ficheros y directorios. Y cada fichero nuevo añadido comienza con un historial nuevo, limpio y completamente suyo.  

CVS, Subversion Características CVS, Subversion: Envíos atómicos: - Una colección cualquiera de modificaciones o bien entra por completo al repositorio, o bien no lo hace en absoluto – Uso de transacciones. - Esto permite a los desarrolladores construir y enviar los cambios como fragmentos lógicos e impide que ocurran problemas cuando sólo una parte de los cambios enviados lo hace con éxito.  

CVS, Subversion Características CVS, Subversion: Elección de las capas de red: - Subversion tiene una noción abstracta del acceso al repositorio, facilitando a las personas implementar nuevos mecanismos de red. - Subversion puede conectarse al servidor HTTP Apache como un módulo de extensión. Esto proporciona a Subversion una gran ventaja en estabilidad e interoperabilidad, y acceso instantáneo a las características existentes que ofrece este servidor— autenticación, autorizawción, compresión de la conexión. - También tiene disponible un servidor independiente, y más ligero. Este servidor habla un protocolo propio, el cual puede ser encaminado fácilmente a través de un túnel SSH.  

CVS, Subversion Características CVS, Subversion: Manipulación consistente de datos: - Subversion expresa las diferencias del fichero usando un algoritmo de diferenciación binario, que funciona idénticamente con ficheros de texto y ficheros binarios (CVS no los manipula). - Ambos tipos de ficheros son almacenados igualmente en el repositorio. Ramificación y etiquetado eficientes: - El coste de ramificación y etiquetado en Subversion no necesita ser proporcional al tamaño del proyecto. - Crea ramas y etiquetas simplemente copiando el proyecto, usando un mecanismo similar al enlace duro. De este modo estas operaciones toman solamente una cantidad de tiempo pequeña y constante.  

CVS, Subversion Características CVS, Subversion: Hackability - Subversion está implementado como una colección de bibliotecas compartidas en C con APIs bien definidas. - Esto hace a Subversion extremadamente fácil de mantener y reutilizable por otras aplicaciones y lenguajes.  

GIT Historia GIT: Núcleo de Linux (1991): - Durante el mantenimiento de este Software, los cambios realizados se pasaron en forma de parches y archivos. BitKeeper (2002): - El proyecto del núcleo de Linux empezó a usar un sistema de control de versiones propietario llamado BitKeeper. Inicios (2005): - La relación entre la comunidad que desarrollaba el núcleo de Linux y la compañía que desarrollaba BitKeeper se vino abajo, y la herramienta dejó de ser gratuita. - La comunidad de desarrollo de Linux crea una herramienta de control de versiones inspirada en BitKeeper y Monotone. - GIT está escrito en C, Bourne Shell y Perl. - Software libre bajo la licencia GNU.

GIT Aspectos Fundamentales: Uso de instantáneas (snapshots): Otros sistemas tienden a almacenar los datos como cambios de cada archivo respecto a una versión base.  Git almacena la información como instantáneas del proyecto a lo largo del tiempo.

GIT Casi cualquier operación es local. Integridad: - Todo es verificado mediante un checksum antes de ser almacenado y todo es identificado a partir de ese momento mediante dicha suma. Esto significa que es imposible cambiar los contenidos de cualquier archivo o directorio sin que GIT lo sepa. GIT detecta la pérdida de información durante la transmisión. - El checksum es generado mediante el hash SHA-1 que consiste en una cadena de 40 caracteres hexadecimales. Por ejemplo: 24b9da6552252987aa493b52f8696cd6d3b00373

GIT Estados: - Committed: datos almacenados de forma segura en la base de datos local. - Modified: se ha modificado un archivo pero todavía no se ha confirmado en la base de datos local. - staged: se ha marcado un archivo modificado en su versión actual para que vaya en una próxima confirmación.

GIT

GIT Sistemas operativos:

GIT Funcionamiento interno directorio git: $ ls .git HEAD: Apuntador al branch actual. branches/: no se utiliza actualmente. config: opciones de configuración del proyecto. description: archivo usado por GitWeb. hooks/: contiene todos los scripts. index: archivo donde se almacena el staging area. info/: patrones a ignorar. objects/: Almacena todo el contenido de la base de datos. refs/: guarda los apuntadores a las confirmaciones de cambios.

GIT Usuarios: