SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
LICENCIATURA EN
INGENIERIA EN SOFTWARE
Y REDES
TRAZABILIDADY CONFIGURACION DE
SOFTWARE
CONTROL DEVERSIONES
 Es un sistema que registra los cambios
realizados sobre un archivo o conjunto de
archivos a lo largo del tiempo, de modo
que puedas recuperar versiones
específicas más adelante.
CONTROL DEVERSIONES
 Te permite revertir archivos a un estado
anterior, revertir el proyecto entero a un
estado anterior, comparar cambios a lo
largo del tiempo, ver quién modificó por
última vez algo que puede estar causando
un problema, quién introdujo un error y
cuándo, y mucho más.
CONTROL DEVERSIONES
 Usar unVCS (Version Control System o
VCS en inglés) también significa
generalmente que si borras o pierdes
archivos, puedes recuperarlos fácilmente.
Además, obtienes todos estos beneficios
a un costo muy bajo.
Sistemas de control de
versiones locales
 Un método de control de versiones
usado por mucha gente es copiar los
archivos a otro directorio (quizás
indicando la fecha y hora en que lo
hicieron, si son precavidos).
Sistemas de control de
versiones locales
 Este enfoque es muy común porque es
muy simple, pero también tremendamente
propenso a errores. Es fácil olvidar en qué
directorio te encuentras, y guardar
accidentalmente en el archivo equivocado
o sobrescribir archivos que no querías.
Sistemas de control de
versiones locales
 Un método de control de
Sistemas de control de
versiones centralizados
 El siguiente gran problema que se
encuentra la gente es que necesitan
colaborar con desarrolladores en otros
sistemas. Para solventar este problema, se
desarrollaron los sistemas de control de
versiones centralizados (Centralized
Version Control Systems o CVCSs en
inglés).
Sistemas de control de
versiones centralizados
 Estos sistemas, como CVS, Subversion, y
Perforce, tienen un único servidor que
contiene todos los archivos versionados, y
varios clientes que descargan los archivos
desde ese lugar central.
Sistemas de control de
versiones centralizados
Sistemas de control de
versiones centralizados
 Esta configuración ofrece muchas ventajas,
especialmente frente aVCSs locales. Por
ejemplo, todo el mundo puede saber
(hasta cierto punto) en qué están
trabajando los otros colaboradores del
proyecto.
Sistemas de control de
versiones centralizados
 Los administradores tienen control
detallado de qué puede hacer cada uno; y
es mucho más fácil administrar un CVCS
que tener que lidiar con bases de datos
locales en cada cliente.
Sistemas de control de
versiones centralizados
 Sin embargo, esta configuración también
tiene serias desventajas. La más obvia es
el punto único de fallo que representa el
servidor centralizado.
Sistemas de control de
versiones centralizados
 Si ese servidor se cae durante una hora,
entonces durante esa hora nadie puede
colaborar o guardar cambios versionados
de aquello en que están trabajando.
Sistemas de control de
versiones centralizados
 Si el disco duro en el que se encuentra la
base de datos central se corrompe, y no se
han llevado copias de seguridad
adecuadamente, pierdes absolutamente todo
—toda la historia del proyecto salvo aquellas
instantáneas que la gente pueda tener en sus
máquinas locales. LosVCSs locales sufren de
este mismo problema— cuando tienes toda
la historia del proyecto en un único lugar, te
arriesgas a perderlo todo.
Sistemas de control de
versiones distribuidos
 Es aquí donde entran los sistemas de
control de versiones distribuidos
(DistributedVersion Control Systems o
DVCSs en inglés). En un DVCS (como Git,
Mercurial, Bazaar o Darcs), los clientes no
sólo descargan la última instantánea de
los archivos: replican completamente el
repositorio.
Sistemas de control de
versiones distribuidos
 Así, si un servidor muere, y estos sistemas
estaban colaborando a través de él,
cualquiera de los repositorios de los
clientes puede copiarse en el servidor
para restaurarlo. Cada vez que se
descarga una instantánea, en realidad se
hace una copia de seguridad completa de
todos los datos
Sistemas de control de
versiones distribuidos
Sistemas de control de
versiones distribuidos
 Es más, muchos de estos sistemas se las
arreglan bastante bien teniendo varios
repositorios con los que trabajar, por lo
que puedes colaborar con distintos
grupos de gente simultáneamente dentro
del mismo proyecto.
Sistemas de control de
versiones distribuidos
 Esto te permite establecer varios flujos de
trabajo que no son posibles en sistemas
centralizados, como pueden ser los
modelos jerárquicos.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Php ppt
Php pptPhp ppt
Php ppt
 
Modelo en cascada
Modelo en cascadaModelo en cascada
Modelo en cascada
 
PRESENTACIÓN RUP
PRESENTACIÓN RUPPRESENTACIÓN RUP
PRESENTACIÓN RUP
 
Ventajas y desventajas de cmmi
Ventajas y desventajas de cmmiVentajas y desventajas de cmmi
Ventajas y desventajas de cmmi
 
Modelamiento software
Modelamiento softwareModelamiento software
Modelamiento software
 
Modelado de requisitos
Modelado de requisitosModelado de requisitos
Modelado de requisitos
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
 
CLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE
CLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARECLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE
CLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE
 
CASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOSCASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOS
 
Metodología rmm resumido
Metodología rmm resumidoMetodología rmm resumido
Metodología rmm resumido
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
 
Ejemplos mapas de navegacion
Ejemplos mapas de navegacionEjemplos mapas de navegacion
Ejemplos mapas de navegacion
 
Tarea1 programacion-distribuida
Tarea1 programacion-distribuidaTarea1 programacion-distribuida
Tarea1 programacion-distribuida
 
Metodologia De Desarrollo De Software
Metodologia De Desarrollo De SoftwareMetodologia De Desarrollo De Software
Metodologia De Desarrollo De Software
 
Patrones diseño y arquitectura
Patrones diseño y arquitecturaPatrones diseño y arquitectura
Patrones diseño y arquitectura
 
UML
UMLUML
UML
 
Plan de iteracion
Plan de iteracionPlan de iteracion
Plan de iteracion
 
Horizontal clustering configuration steps
Horizontal clustering configuration steps Horizontal clustering configuration steps
Horizontal clustering configuration steps
 
Seguridad en los Sistemas Operativos
Seguridad en los Sistemas OperativosSeguridad en los Sistemas Operativos
Seguridad en los Sistemas Operativos
 
Indagación de los requerimientos
Indagación de los requerimientosIndagación de los requerimientos
Indagación de los requerimientos
 

Similar a Control de versiones

Sistemas para el Control de Versiones de Código
Sistemas para el Control de Versiones de CódigoSistemas para el Control de Versiones de Código
Sistemas para el Control de Versiones de CódigoJesus Castagnetto
 
PPT Git GitHub
PPT Git GitHubPPT Git GitHub
PPT Git GitHubdrsevilla
 
Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.Jomicast
 
Control de Versiones - Uso de CVS en proyectos .NET
Control de Versiones - Uso de CVS en proyectos .NETControl de Versiones - Uso de CVS en proyectos .NET
Control de Versiones - Uso de CVS en proyectos .NETLa Red DBAccess
 
Cómo migrar de source safe a team foundation server 2010
Cómo migrar de source safe a team foundation server 2010Cómo migrar de source safe a team foundation server 2010
Cómo migrar de source safe a team foundation server 2010Diego Vazquez Arce
 
Subversion Press
Subversion PressSubversion Press
Subversion Pressjlrvpuma
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con gitEudris Cabrera
 
Control de versiones utilizando subversion
Control de versiones utilizando subversionControl de versiones utilizando subversion
Control de versiones utilizando subversionJulio Pari
 
Tutorial de subvesion
Tutorial de subvesionTutorial de subvesion
Tutorial de subvesionPablo Morales
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosAsis Matos
 
[ES] Control de versiones con subversion
[ES] Control de versiones con  subversion[ES] Control de versiones con  subversion
[ES] Control de versiones con subversionEudris Cabrera
 

Similar a Control de versiones (20)

Uf2216 04-git
Uf2216 04-gitUf2216 04-git
Uf2216 04-git
 
Sistemas para el Control de Versiones de Código
Sistemas para el Control de Versiones de CódigoSistemas para el Control de Versiones de Código
Sistemas para el Control de Versiones de Código
 
Subversion
SubversionSubversion
Subversion
 
PPT Git GitHub
PPT Git GitHubPPT Git GitHub
PPT Git GitHub
 
Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.
 
Versionamiento
VersionamientoVersionamiento
Versionamiento
 
Subversion
SubversionSubversion
Subversion
 
Control de Versiones - Uso de CVS en proyectos .NET
Control de Versiones - Uso de CVS en proyectos .NETControl de Versiones - Uso de CVS en proyectos .NET
Control de Versiones - Uso de CVS en proyectos .NET
 
Desarrollo Subversivo
Desarrollo SubversivoDesarrollo Subversivo
Desarrollo Subversivo
 
Cómo migrar de source safe a team foundation server 2010
Cómo migrar de source safe a team foundation server 2010Cómo migrar de source safe a team foundation server 2010
Cómo migrar de source safe a team foundation server 2010
 
Subversion Press
Subversion PressSubversion Press
Subversion Press
 
Scm
ScmScm
Scm
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con git
 
Control de versiones utilizando subversion
Control de versiones utilizando subversionControl de versiones utilizando subversion
Control de versiones utilizando subversion
 
Tutorial de subvesion
Tutorial de subvesionTutorial de subvesion
Tutorial de subvesion
 
WSUS
WSUSWSUS
WSUS
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
[ES] Control de versiones con subversion
[ES] Control de versiones con  subversion[ES] Control de versiones con  subversion
[ES] Control de versiones con subversion
 
Virtualización
VirtualizaciónVirtualización
Virtualización
 
Conceptos de software
Conceptos de softwareConceptos de software
Conceptos de software
 

Más de Giovani Ramirez

Lenguajes de trazabilidad proveedores de ambiente
Lenguajes de trazabilidad proveedores de ambienteLenguajes de trazabilidad proveedores de ambiente
Lenguajes de trazabilidad proveedores de ambienteGiovani Ramirez
 
Lenguajes de trazabilidad expresiones regulares
Lenguajes de trazabilidad expresiones regularesLenguajes de trazabilidad expresiones regulares
Lenguajes de trazabilidad expresiones regularesGiovani Ramirez
 
Lenguaje de trazabilidad tipo query
Lenguaje de trazabilidad tipo queryLenguaje de trazabilidad tipo query
Lenguaje de trazabilidad tipo queryGiovani Ramirez
 
Modelo de trazabilidad guiado por base de datos
Modelo de trazabilidad guiado por base de datosModelo de trazabilidad guiado por base de datos
Modelo de trazabilidad guiado por base de datosGiovani Ramirez
 
Modelo de trazabilidad estructura contributiva
Modelo de trazabilidad estructura contributivaModelo de trazabilidad estructura contributiva
Modelo de trazabilidad estructura contributivaGiovani Ramirez
 
Modelo de trazabilidad centrado en documentos
Modelo de trazabilidad centrado en documentosModelo de trazabilidad centrado en documentos
Modelo de trazabilidad centrado en documentosGiovani Ramirez
 
5 5 preparacion de la propuesta de sistemas
5 5 preparacion de la propuesta de sistemas5 5 preparacion de la propuesta de sistemas
5 5 preparacion de la propuesta de sistemasGiovani Ramirez
 
5 4 analisis y disenio de sistemas orientados a objetos
5 4 analisis y disenio de sistemas orientados a objetos5 4 analisis y disenio de sistemas orientados a objetos
5 4 analisis y disenio de sistemas orientados a objetosGiovani Ramirez
 
5 3 descripcion de las especificaciones de procesos y decisiones estructuradas
5 3 descripcion de las especificaciones de procesos y decisiones estructuradas5 3 descripcion de las especificaciones de procesos y decisiones estructuradas
5 3 descripcion de las especificaciones de procesos y decisiones estructuradasGiovani Ramirez
 
5 2 analisis mediante diccionario de datos
5 2 analisis mediante diccionario de datos5 2 analisis mediante diccionario de datos
5 2 analisis mediante diccionario de datosGiovani Ramirez
 
7 aseguramiento e implementacion de la calidad
7 aseguramiento e implementacion de la calidad7 aseguramiento e implementacion de la calidad
7 aseguramiento e implementacion de la calidadGiovani Ramirez
 
6 fundamentos del disenio
6 fundamentos del disenio6 fundamentos del disenio
6 fundamentos del disenioGiovani Ramirez
 
4 3 modelado agil y prototipos
4 3 modelado agil y prototipos4 3 modelado agil y prototipos
4 3 modelado agil y prototiposGiovani Ramirez
 
4 2 recopilacion con metodos discretos
4 2 recopilacion con metodos discretos4 2 recopilacion con metodos discretos
4 2 recopilacion con metodos discretosGiovani Ramirez
 
4 1 recopilacion con metodos interactivos
4 1 recopilacion con metodos interactivos4 1 recopilacion con metodos interactivos
4 1 recopilacion con metodos interactivosGiovani Ramirez
 
3 6 3-7 desarrollo_de_sistemas_de_informacion
3 6 3-7 desarrollo_de_sistemas_de_informacion3 6 3-7 desarrollo_de_sistemas_de_informacion
3 6 3-7 desarrollo_de_sistemas_de_informacionGiovani Ramirez
 
3 5 comprension y modelado de los sistemas organizacionales
3 5 comprension y modelado de los sistemas organizacionales3 5 comprension y modelado de los sistemas organizacionales
3 5 comprension y modelado de los sistemas organizacionalesGiovani Ramirez
 
3 2 3-4 desarrollo de sistemas de informacion
3 2 3-4 desarrollo de sistemas de informacion3 2 3-4 desarrollo de sistemas de informacion
3 2 3-4 desarrollo de sistemas de informacionGiovani Ramirez
 

Más de Giovani Ramirez (20)

Funciones
FuncionesFunciones
Funciones
 
Lenguajes de trazabilidad proveedores de ambiente
Lenguajes de trazabilidad proveedores de ambienteLenguajes de trazabilidad proveedores de ambiente
Lenguajes de trazabilidad proveedores de ambiente
 
Lenguajes de trazabilidad expresiones regulares
Lenguajes de trazabilidad expresiones regularesLenguajes de trazabilidad expresiones regulares
Lenguajes de trazabilidad expresiones regulares
 
Lenguaje de trazabilidad tipo query
Lenguaje de trazabilidad tipo queryLenguaje de trazabilidad tipo query
Lenguaje de trazabilidad tipo query
 
Modelo de trazabilidad guiado por base de datos
Modelo de trazabilidad guiado por base de datosModelo de trazabilidad guiado por base de datos
Modelo de trazabilidad guiado por base de datos
 
Modelo de trazabilidad estructura contributiva
Modelo de trazabilidad estructura contributivaModelo de trazabilidad estructura contributiva
Modelo de trazabilidad estructura contributiva
 
Modelo de trazabilidad centrado en documentos
Modelo de trazabilidad centrado en documentosModelo de trazabilidad centrado en documentos
Modelo de trazabilidad centrado en documentos
 
5 5 preparacion de la propuesta de sistemas
5 5 preparacion de la propuesta de sistemas5 5 preparacion de la propuesta de sistemas
5 5 preparacion de la propuesta de sistemas
 
5 4 analisis y disenio de sistemas orientados a objetos
5 4 analisis y disenio de sistemas orientados a objetos5 4 analisis y disenio de sistemas orientados a objetos
5 4 analisis y disenio de sistemas orientados a objetos
 
5 3 descripcion de las especificaciones de procesos y decisiones estructuradas
5 3 descripcion de las especificaciones de procesos y decisiones estructuradas5 3 descripcion de las especificaciones de procesos y decisiones estructuradas
5 3 descripcion de las especificaciones de procesos y decisiones estructuradas
 
5 2 analisis mediante diccionario de datos
5 2 analisis mediante diccionario de datos5 2 analisis mediante diccionario de datos
5 2 analisis mediante diccionario de datos
 
5 1 diagramas de flujo
5 1 diagramas de flujo5 1 diagramas de flujo
5 1 diagramas de flujo
 
7 aseguramiento e implementacion de la calidad
7 aseguramiento e implementacion de la calidad7 aseguramiento e implementacion de la calidad
7 aseguramiento e implementacion de la calidad
 
6 fundamentos del disenio
6 fundamentos del disenio6 fundamentos del disenio
6 fundamentos del disenio
 
4 3 modelado agil y prototipos
4 3 modelado agil y prototipos4 3 modelado agil y prototipos
4 3 modelado agil y prototipos
 
4 2 recopilacion con metodos discretos
4 2 recopilacion con metodos discretos4 2 recopilacion con metodos discretos
4 2 recopilacion con metodos discretos
 
4 1 recopilacion con metodos interactivos
4 1 recopilacion con metodos interactivos4 1 recopilacion con metodos interactivos
4 1 recopilacion con metodos interactivos
 
3 6 3-7 desarrollo_de_sistemas_de_informacion
3 6 3-7 desarrollo_de_sistemas_de_informacion3 6 3-7 desarrollo_de_sistemas_de_informacion
3 6 3-7 desarrollo_de_sistemas_de_informacion
 
3 5 comprension y modelado de los sistemas organizacionales
3 5 comprension y modelado de los sistemas organizacionales3 5 comprension y modelado de los sistemas organizacionales
3 5 comprension y modelado de los sistemas organizacionales
 
3 2 3-4 desarrollo de sistemas de informacion
3 2 3-4 desarrollo de sistemas de informacion3 2 3-4 desarrollo de sistemas de informacion
3 2 3-4 desarrollo de sistemas de informacion
 

Control de versiones

  • 1. LICENCIATURA EN INGENIERIA EN SOFTWARE Y REDES TRAZABILIDADY CONFIGURACION DE SOFTWARE
  • 2. CONTROL DEVERSIONES  Es un sistema que registra los cambios realizados sobre un archivo o conjunto de archivos a lo largo del tiempo, de modo que puedas recuperar versiones específicas más adelante.
  • 3. CONTROL DEVERSIONES  Te permite revertir archivos a un estado anterior, revertir el proyecto entero a un estado anterior, comparar cambios a lo largo del tiempo, ver quién modificó por última vez algo que puede estar causando un problema, quién introdujo un error y cuándo, y mucho más.
  • 4. CONTROL DEVERSIONES  Usar unVCS (Version Control System o VCS en inglés) también significa generalmente que si borras o pierdes archivos, puedes recuperarlos fácilmente. Además, obtienes todos estos beneficios a un costo muy bajo.
  • 5. Sistemas de control de versiones locales  Un método de control de versiones usado por mucha gente es copiar los archivos a otro directorio (quizás indicando la fecha y hora en que lo hicieron, si son precavidos).
  • 6. Sistemas de control de versiones locales  Este enfoque es muy común porque es muy simple, pero también tremendamente propenso a errores. Es fácil olvidar en qué directorio te encuentras, y guardar accidentalmente en el archivo equivocado o sobrescribir archivos que no querías.
  • 7. Sistemas de control de versiones locales  Un método de control de
  • 8. Sistemas de control de versiones centralizados  El siguiente gran problema que se encuentra la gente es que necesitan colaborar con desarrolladores en otros sistemas. Para solventar este problema, se desarrollaron los sistemas de control de versiones centralizados (Centralized Version Control Systems o CVCSs en inglés).
  • 9. Sistemas de control de versiones centralizados  Estos sistemas, como CVS, Subversion, y Perforce, tienen un único servidor que contiene todos los archivos versionados, y varios clientes que descargan los archivos desde ese lugar central.
  • 10. Sistemas de control de versiones centralizados
  • 11. Sistemas de control de versiones centralizados  Esta configuración ofrece muchas ventajas, especialmente frente aVCSs locales. Por ejemplo, todo el mundo puede saber (hasta cierto punto) en qué están trabajando los otros colaboradores del proyecto.
  • 12. Sistemas de control de versiones centralizados  Los administradores tienen control detallado de qué puede hacer cada uno; y es mucho más fácil administrar un CVCS que tener que lidiar con bases de datos locales en cada cliente.
  • 13. Sistemas de control de versiones centralizados  Sin embargo, esta configuración también tiene serias desventajas. La más obvia es el punto único de fallo que representa el servidor centralizado.
  • 14. Sistemas de control de versiones centralizados  Si ese servidor se cae durante una hora, entonces durante esa hora nadie puede colaborar o guardar cambios versionados de aquello en que están trabajando.
  • 15. Sistemas de control de versiones centralizados  Si el disco duro en el que se encuentra la base de datos central se corrompe, y no se han llevado copias de seguridad adecuadamente, pierdes absolutamente todo —toda la historia del proyecto salvo aquellas instantáneas que la gente pueda tener en sus máquinas locales. LosVCSs locales sufren de este mismo problema— cuando tienes toda la historia del proyecto en un único lugar, te arriesgas a perderlo todo.
  • 16. Sistemas de control de versiones distribuidos  Es aquí donde entran los sistemas de control de versiones distribuidos (DistributedVersion Control Systems o DVCSs en inglés). En un DVCS (como Git, Mercurial, Bazaar o Darcs), los clientes no sólo descargan la última instantánea de los archivos: replican completamente el repositorio.
  • 17. Sistemas de control de versiones distribuidos  Así, si un servidor muere, y estos sistemas estaban colaborando a través de él, cualquiera de los repositorios de los clientes puede copiarse en el servidor para restaurarlo. Cada vez que se descarga una instantánea, en realidad se hace una copia de seguridad completa de todos los datos
  • 18. Sistemas de control de versiones distribuidos
  • 19. Sistemas de control de versiones distribuidos  Es más, muchos de estos sistemas se las arreglan bastante bien teniendo varios repositorios con los que trabajar, por lo que puedes colaborar con distintos grupos de gente simultáneamente dentro del mismo proyecto.
  • 20. Sistemas de control de versiones distribuidos  Esto te permite establecer varios flujos de trabajo que no son posibles en sistemas centralizados, como pueden ser los modelos jerárquicos.