SlideShare una empresa de Scribd logo
Sistemas de Control de Fuentes




            Website
Índice
Introducción
 Funciones
Why Use It ?
 Problema
 Elementos
Instalación
Operaciones
 Ejemplos


               2
Introducción
●   Casos Verídicos
    ●   Carlos, ¿Podrías pasarme una copia con los
        cambios que hiciste ayer ?
    ●   Ana, esta función da error, ¿Has cambiado
        algo?
    ●   He perdido la clase Empleado que implemente
        el lunes en practicas... Otra vez a
        implementar...
    ●   Mañana quedamos en la biblioteca y
        terminamos la practica entre los dos.


                                                      3
Introducción
●   ¿A que se debe este tipo de situaciones?

    ●   Proyecto/Prácticas en común desorganizadas

    ●   Proceso donde la información no esta bajo
        control.




                                                     4
Introducción
●   Proyecto => Complejo
●   Proyecto => “Varios” Desarrolladores
●   Proyecto => Control de Información
●   Proyecto => Herramientas / Técnicas
●   Proyecto => Mantener Código Fuente

    Es fundamental un sistema de control
    de fuentes

                                           5
Funciones
●   Hacer un seguimiento del estado de cada
    archivos a través del tiempo.
●   Combinar contribuciones de varios
    desarrolladores.
●   Almacenar un historial de cambios
    realizados a través del tiempo por
    diferentes personas.




                                              6
Funciones
●   “El control de versiones es el arte del
    manejo de los cambios en la información”

●   Retroceder y ver los cambios de los
    archivos antes de que se aplicaran

●   Facilita el trabajo colaborativo




                                               7
Funciones
●   El control de versiones
    no sólo es necesario
    para el software




                              8
Why Use It ?

●   Integridad de los Datos

    ●   Historial de Cambios
    ●   Repositorio Central
        –   Favorece las copias de seguridad
        –   Posibilidad de fallo en un disco local




                                                     9
Why Use It ?

●   Productividad

    ●   No se pierde tiempo en la integración del
        trabajo de varios desarrolladores.
    ●   Facilita el acceso a los datos de los
        desarrolladores.




                                                    10
Why Use It ?

●   Control y Distribución de Trabajo

    ●   ¿Quién lo hace?
    ●   ¿Qué hace?
    ●   ¿Cuándo lo hace?




                                        11
Why Use It ?
●   Lineas de Desarrollo (Ramas)

    ●   Facilita el mantenimiento de varias lineas
    ●   Ayuda a combinar diferentes lineas
    ●   Al añadir nuevas características a una linea,
        estas se pueden propagar fácilmente a otras
        lineas de desarrollo.




                                                        12
Why Use It ?
●    Herramienta para la Ingeniería del
    Software.
    ●   Un proceso de desarrollo de software necesita
        de ciertas herramientas para lograr su
        objetivo.
    ●   Subversion es un proyecto de código abierto
        alojado por la comunidad Tigris.org que
        desarrolla diversas herramientas enfocadas a
         la ingeniería del software.



                                                    13
El Problema




              14
Sobreescribir




                15
La Solución




              16
Lock-Modify-Unlock




                     17
Copy-Modify-Merge




                    18
Elementos
●   Un repositorio, depósito o archivo es un
    lugar centralizado donde se almacena y
    mantiene información digital,
    habitualmente bases de datos o archivos
    informáticos

●   Subversion es un repositorio en forma de
    árbol con una jerarquía de directorios y
    archivos.


                                               19
Elementos
Repositorio




Escribe                    Lee   Lee




Cliente          Cliente          Cliente




                                            20
Elementos

●   Repositorio Centralizado
    ●   Mas sencillo de usar que los distribuidos
    ●   Control total sobre las versiones
    ●   Limitaciones en el acceso
    ●   Se reduce el número de conflictos




                                                    21
Elementos
●   Copia de Trabajo

    ●   Copia Local de los archivos y directorios del
        repositorio. A ella se incorporarán los cambios
        o pondrán a disposición los tuyos cuando tú se
        lo indiques.
    ●   Directorio ./svn




                                                      22
Elementos
●   Revisión
    ●   Es una “instantánea” del repositorio en un
        momento particular en el tiempo, cada vez
        que el servidor acepta un envío se crea una
        nueva revisión.
    ●   Para identificarlas se utilizan números
        comenzando desde cero.




                                                      23
Elementos
●   Ramas (Branch)
    ●   Lineas de desarrollo independientes a otras,
        pero comparten una historia común si mira lo
        suficientemente atrás en el tiempo.




                                                       24
Elementos
●   Etiquetas (Tags)

    ●   Es una rama sobre la que no se incluyen
        cambios
    ●   Contiene el código/ficheros de una revisión
        especifica.
    ●   Etiquetamos la revisión para establecer un
        hito en la linea de desarrollo.




                                                      25
Instalación
●   Debes elegir tu camino....
●   La pastilla roja
    ●   sudo apt-get install subversion
●   La pastilla azul
    ●   RapidSVN
    ●   TortoiseSVN


           http://subversion.apache.org/packages.html



                                                        26
Instalación

●   Netbeans
    ●   Plug-in subversion
    ●   Guia de Uso
●   Eclipse
    ●   Subclipse
    ●   Website




                             27
Instalación




              28
Operaciones
●   svn -- version
●   svn help subcomando
       –   add
       –   import
       –   checkout




                          29
Operaciones
●   svn checkout
    https://svnosl.googlecode.com/svn/
    svnosl --username mi_usuario




                                         30
Operaciones

●   chekout : Obtener una copia local de la
    ultima revisión
●   --username Solo en el checkout inicial
●   Aparece un directorio svnosl que contiene
    los ficheros del repositorio
●   Se lanzan las ordenes sobre ese directorio




                                                31
Operaciones

●   Estructura común del repositorio

    ●   /trunk   Contiene la línea principal desarrollo
    ●   /branch Contiene las ramas
    ●   /tags    Contiene los tags

●   svn checkout
    https://svnosl.googlecode.com/svn/trunk
    svnosl --username mi_usuario

                                                          32
Ciclo de Trabajo

●   Actualizar la copia de trabajo
●   Modificar la copia de trabajo
●   Comprobar los cambios realizados
●   Deshacer ciertos cambios
●   Resolver conflictos
●   Guardar los cambios realizados



                                       33
Actualizar la copia de Trabajo
●   svn update
●   Indica los cambios que existen entre
    nuestra copia de trabajo y el repositorio,
    con respecto a la ultima revisión
●   svn update -- revision 23




                                                 34
Actualizar la copia de Trabajo




                                 35
Modificar la copia de Trabajo
●   svn add fichero
●   svn delete fichero
●   svn copy fichero
●   svn move fichero
●   svn mkdir directorio
    ●   Crea el directorio y lo añade ( mkdir + add )




                                                        36
Comprobar Cambios
●   svn status
    ●   Muestras los ficheros donde hay cambios
●   svn status – q
●   svn status – u
●   svn status – v




                                                  37
Comprobar Cambios




                    38
Comprobar Cambios

●   svn diff
    ●   Ver las diferencias con exactitud
    ●   Por defecto el ultimo fichero modificado
●   svn diff fichero




                                                   39
Comprobar Cambios




                    40
Comprobar Cambios
●   Para una determinada revisión
●   svn diff -r 26 ejemplo.h




                                    41
Deshacer Cambios


●   svn revert
    ●   Mediante la orden diff se observa un error y
        se corrige el cambio mediante esta orden
    ●   Ejecutamos svn delete por error




                                                       42
Resolver Conflictos
●   Aparecen cuando actualizamos la copia de
    trabajo




                                           43
Resolver Conflictos


●   Aparecen los siguientes ficheros
    ●   filename.mine     Mi Archivo
    ●   filename.rOLDREV Version original
    ●   filename.rNEWREV Version repositorio




                                               44
Resolver Conflictos
●   Postpone (svn no admite commit)




                                      45
Resolver Conflictos




                      46
Resolver Conflicto
●   By Hand




                              47
Resolver Conflictos
●   svn resolve




                               48
Guardar Cambios
●   svn commit -m “Corregido makefile”




                                         49
Ciclo de Trabajo

●   Actualizar la copia de trabajo
●   Modificar la copia de trabajo
●   Comprobar los cambios realizados
●   Deshacer ciertos cambios
●   Resolver conflictos
●   Guardar los cambios realizados


                                       50
Operaciones
●   svn log
●   svn log -r 20 -v
●   svn log -r 10:20
●   svn log -r 20:15




                       51
Operaciones
●   svn list -v directorio (URL)
    ●   Ficheros disponibles en el directorio




                                                52
Operaciones

●   Ramas
    ●   svn copy
    ●   svn merge
    ●   svn diff
    ●   svn switch




                     53
Operaciones




              54
Operaciones




              55
Operaciones
●   Tags (svn copy)




                           56
Operaciones




              57
58
Licencia

Fco Javier Lucena Lucena

 fran.lucena@gmail.com

http://www.franlucena.es




                           59

Más contenido relacionado

La actualidad más candente

Git: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativoGit: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativo
Aprende Git
 
Maven
MavenMaven
Introduccion arqullian
Introduccion arqullianIntroduccion arqullian
Introduccion arqullian
Brahyan Aguirre
 
Configuración de software
Configuración de softwareConfiguración de software
Configuración de software
Jorge Rodriguez
 
Flujo de trabajo básico con git
Flujo de trabajo básico con gitFlujo de trabajo básico con git
Flujo de trabajo básico con git
Jan Sanchez
 
React Hooks ¿Por donde empezar?
React Hooks ¿Por donde empezar?React Hooks ¿Por donde empezar?
React Hooks ¿Por donde empezar?
Adrian Diaz Cervera
 
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
Diego Vazquez Arce
 
Administra tu código con Git y Github
Administra tu código con Git y GithubAdministra tu código con Git y Github
Administra tu código con Git y Github
Javier Novoa Cataño
 
Git y github básico
Git y github básicoGit y github básico
Git y github básico
Nelson Manuel Ordaz Yglesias
 
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente? LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
emateucr
 
Spring boot et. al. para el impaciente
Spring boot et. al. para el impacienteSpring boot et. al. para el impaciente
Spring boot et. al. para el impaciente
Miguel Ángel Enríquez López
 
Herramientas de integración continua en proyectos software
Herramientas de integración continua en proyectos softwareHerramientas de integración continua en proyectos software
Herramientas de integración continua en proyectos software
Jose Manuel Ortega Candel
 
Semana 1 Introducción a Java
Semana 1   Introducción a JavaSemana 1   Introducción a Java
Semana 1 Introducción a Java
Richard Eliseo Mendoza Gafaro
 
Desplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsDesplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y Jenkins
La Drupalera
 
Modulo Jee Practica Pos Fp Une
Modulo Jee Practica  Pos Fp UneModulo Jee Practica  Pos Fp Une
Modulo Jee Practica Pos Fp Une
Marcos Jara
 
Magallanes - PHPmvd Meet Up - Mayo 2014
Magallanes - PHPmvd Meet Up - Mayo 2014Magallanes - PHPmvd Meet Up - Mayo 2014
Magallanes - PHPmvd Meet Up - Mayo 2014
Andrés Montañez
 
Un modelo exitoso para git
Un modelo exitoso para gitUn modelo exitoso para git
Un modelo exitoso para git
Miguel Angel Piña Avelino
 
Docker images
Docker imagesDocker images
Docker images
Victor S. Recio
 
Jenkins pipeline
Jenkins pipelineJenkins pipeline
Jenkins pipeline
Patxi Gortázar
 
CI integración continua
CI   integración continuaCI   integración continua
CI integración continua
Mariano German Egui
 

La actualidad más candente (20)

Git: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativoGit: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativo
 
Maven
MavenMaven
Maven
 
Introduccion arqullian
Introduccion arqullianIntroduccion arqullian
Introduccion arqullian
 
Configuración de software
Configuración de softwareConfiguración de software
Configuración de software
 
Flujo de trabajo básico con git
Flujo de trabajo básico con gitFlujo de trabajo básico con git
Flujo de trabajo básico con git
 
React Hooks ¿Por donde empezar?
React Hooks ¿Por donde empezar?React Hooks ¿Por donde empezar?
React Hooks ¿Por donde empezar?
 
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
 
Administra tu código con Git y Github
Administra tu código con Git y GithubAdministra tu código con Git y Github
Administra tu código con Git y Github
 
Git y github básico
Git y github básicoGit y github básico
Git y github básico
 
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente? LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
LaTeX y Git: ¿Cómo controlar archivos de LaTeX eficientemente?
 
Spring boot et. al. para el impaciente
Spring boot et. al. para el impacienteSpring boot et. al. para el impaciente
Spring boot et. al. para el impaciente
 
Herramientas de integración continua en proyectos software
Herramientas de integración continua en proyectos softwareHerramientas de integración continua en proyectos software
Herramientas de integración continua en proyectos software
 
Semana 1 Introducción a Java
Semana 1   Introducción a JavaSemana 1   Introducción a Java
Semana 1 Introducción a Java
 
Desplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsDesplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y Jenkins
 
Modulo Jee Practica Pos Fp Une
Modulo Jee Practica  Pos Fp UneModulo Jee Practica  Pos Fp Une
Modulo Jee Practica Pos Fp Une
 
Magallanes - PHPmvd Meet Up - Mayo 2014
Magallanes - PHPmvd Meet Up - Mayo 2014Magallanes - PHPmvd Meet Up - Mayo 2014
Magallanes - PHPmvd Meet Up - Mayo 2014
 
Un modelo exitoso para git
Un modelo exitoso para gitUn modelo exitoso para git
Un modelo exitoso para git
 
Docker images
Docker imagesDocker images
Docker images
 
Jenkins pipeline
Jenkins pipelineJenkins pipeline
Jenkins pipeline
 
CI integración continua
CI   integración continuaCI   integración continua
CI integración continua
 

Destacado

9 sistemas de ordenación
9 sistemas de ordenación9 sistemas de ordenación
9 sistemas de ordenación
Balbino Rodriguez
 
Como codificar lotes
Como codificar lotesComo codificar lotes
Como codificar lotes
Juan Rodriguez
 
Codificación e identificación de productos – código de barras GS1
Codificación e identificación  de productos – código de barras GS1Codificación e identificación  de productos – código de barras GS1
Codificación e identificación de productos – código de barras GS1
Universidad Peruana Unión
 
Desarrollo de un Nuevo Producto - Inicio
Desarrollo de un Nuevo Producto - InicioDesarrollo de un Nuevo Producto - Inicio
Desarrollo de un Nuevo Producto - Inicio
Dharma Consulting
 
Desarrollo de un Nuevo Producto - Cierre
Desarrollo de un Nuevo Producto - CierreDesarrollo de un Nuevo Producto - Cierre
Desarrollo de un Nuevo Producto - Cierre
Dharma Consulting
 
Eslaleche
EslalecheEslaleche

Destacado (6)

9 sistemas de ordenación
9 sistemas de ordenación9 sistemas de ordenación
9 sistemas de ordenación
 
Como codificar lotes
Como codificar lotesComo codificar lotes
Como codificar lotes
 
Codificación e identificación de productos – código de barras GS1
Codificación e identificación  de productos – código de barras GS1Codificación e identificación  de productos – código de barras GS1
Codificación e identificación de productos – código de barras GS1
 
Desarrollo de un Nuevo Producto - Inicio
Desarrollo de un Nuevo Producto - InicioDesarrollo de un Nuevo Producto - Inicio
Desarrollo de un Nuevo Producto - Inicio
 
Desarrollo de un Nuevo Producto - Cierre
Desarrollo de un Nuevo Producto - CierreDesarrollo de un Nuevo Producto - Cierre
Desarrollo de un Nuevo Producto - Cierre
 
Eslaleche
EslalecheEslaleche
Eslaleche
 

Similar a Control de Versiones con Subversion (SVN)

Tema 1 Control de Versiones
Tema 1 Control de VersionesTema 1 Control de Versiones
Tema 1 Control de Versiones
Carlos A. Iglesias
 
ATICA DevOps
ATICA DevOpsATICA DevOps
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con git
Eudris Cabrera
 
Presentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones SegurasPresentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones Seguras
José Moreno
 
S14-DAW-2022S1.pptx
S14-DAW-2022S1.pptxS14-DAW-2022S1.pptx
S14-DAW-2022S1.pptx
Luis Fernando Aguas Bucheli
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
Hugo Gilmar Erazo
 
Clase1
Clase1Clase1
Induccion0_GitLab.pptx
Induccion0_GitLab.pptxInduccion0_GitLab.pptx
Induccion0_GitLab.pptx
ssuser3ff40a
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
Manuel Ceron
 
Manual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdfManual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdf
CarlosJurado61
 
DevOps+[Chef/Docker]
 DevOps+[Chef/Docker] DevOps+[Chef/Docker]
DevOps+[Chef/Docker]
Christian Rodriguez
 
Herramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMPHerramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMP
Keopx
 
Git: control de versiones
Git: control de versionesGit: control de versiones
Git: control de versiones
Moisés Pérez Delgado
 
[ES] Control de versiones con subversion
[ES] Control de versiones con  subversion[ES] Control de versiones con  subversion
[ES] Control de versiones con subversion
Eudris Cabrera
 
Introduccion Java.ppt
Introduccion Java.pptIntroduccion Java.ppt
Introduccion Java.ppt
Valentin Choquehuanca
 
Infraestructura agil
Infraestructura agilInfraestructura agil
Infraestructura agil
Adrian Moya
 
16416960 modelo-cascada-espiralincremental
16416960 modelo-cascada-espiralincremental16416960 modelo-cascada-espiralincremental
16416960 modelo-cascada-espiralincremental
zaggy88
 
U1 Control de versiones.pdf
U1 Control de versiones.pdfU1 Control de versiones.pdf
U1 Control de versiones.pdf
Eric Quiñones
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datos
Usein Gonzalez
 
An evening with... Liquidbase
An evening with... LiquidbaseAn evening with... Liquidbase
An evening with... Liquidbase
Arkhotech
 

Similar a Control de Versiones con Subversion (SVN) (20)

Tema 1 Control de Versiones
Tema 1 Control de VersionesTema 1 Control de Versiones
Tema 1 Control de Versiones
 
ATICA DevOps
ATICA DevOpsATICA DevOps
ATICA DevOps
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con git
 
Presentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones SegurasPresentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones Seguras
 
S14-DAW-2022S1.pptx
S14-DAW-2022S1.pptxS14-DAW-2022S1.pptx
S14-DAW-2022S1.pptx
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
Clase1
Clase1Clase1
Clase1
 
Induccion0_GitLab.pptx
Induccion0_GitLab.pptxInduccion0_GitLab.pptx
Induccion0_GitLab.pptx
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
 
Manual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdfManual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdf
 
DevOps+[Chef/Docker]
 DevOps+[Chef/Docker] DevOps+[Chef/Docker]
DevOps+[Chef/Docker]
 
Herramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMPHerramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMP
 
Git: control de versiones
Git: control de versionesGit: control de versiones
Git: control de versiones
 
[ES] Control de versiones con subversion
[ES] Control de versiones con  subversion[ES] Control de versiones con  subversion
[ES] Control de versiones con subversion
 
Introduccion Java.ppt
Introduccion Java.pptIntroduccion Java.ppt
Introduccion Java.ppt
 
Infraestructura agil
Infraestructura agilInfraestructura agil
Infraestructura agil
 
16416960 modelo-cascada-espiralincremental
16416960 modelo-cascada-espiralincremental16416960 modelo-cascada-espiralincremental
16416960 modelo-cascada-espiralincremental
 
U1 Control de versiones.pdf
U1 Control de versiones.pdfU1 Control de versiones.pdf
U1 Control de versiones.pdf
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datos
 
An evening with... Liquidbase
An evening with... LiquidbaseAn evening with... Liquidbase
An evening with... Liquidbase
 

Más de Fco Javier Lucena

Bucles con Scratch
Bucles con ScratchBucles con Scratch
Bucles con Scratch
Fco Javier Lucena
 
Interfaces de usuario con PyGTK
Interfaces de usuario con PyGTKInterfaces de usuario con PyGTK
Interfaces de usuario con PyGTK
Fco Javier Lucena
 
En busca de la piedra filosofal
En busca de la piedra filosofalEn busca de la piedra filosofal
En busca de la piedra filosofal
Fco Javier Lucena
 
reglajes formula uno electre
reglajes formula uno electrereglajes formula uno electre
reglajes formula uno electre
Fco Javier Lucena
 
Manual Basico para Encantadores de Serpientes (Python)
Manual Basico para Encantadores de Serpientes (Python)Manual Basico para Encantadores de Serpientes (Python)
Manual Basico para Encantadores de Serpientes (Python)
Fco Javier Lucena
 
Presentacion Python
Presentacion  Python Presentacion  Python
Presentacion Python
Fco Javier Lucena
 
Tablas HTML
Tablas HTMLTablas HTML
Tablas HTML
Fco Javier Lucena
 

Más de Fco Javier Lucena (7)

Bucles con Scratch
Bucles con ScratchBucles con Scratch
Bucles con Scratch
 
Interfaces de usuario con PyGTK
Interfaces de usuario con PyGTKInterfaces de usuario con PyGTK
Interfaces de usuario con PyGTK
 
En busca de la piedra filosofal
En busca de la piedra filosofalEn busca de la piedra filosofal
En busca de la piedra filosofal
 
reglajes formula uno electre
reglajes formula uno electrereglajes formula uno electre
reglajes formula uno electre
 
Manual Basico para Encantadores de Serpientes (Python)
Manual Basico para Encantadores de Serpientes (Python)Manual Basico para Encantadores de Serpientes (Python)
Manual Basico para Encantadores de Serpientes (Python)
 
Presentacion Python
Presentacion  Python Presentacion  Python
Presentacion Python
 
Tablas HTML
Tablas HTMLTablas HTML
Tablas HTML
 

Último

3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
rosannatasaycoyactay
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
https://gramadal.wordpress.com/
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
20minutos
 
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docxLecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Alejandrino Halire Ccahuana
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
H4RV3YH3RN4ND3Z
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
acgtz913
 
Todo sobre el acta constitutiva de la empresa.pdf
Todo sobre el acta constitutiva de la empresa.pdfTodo sobre el acta constitutiva de la empresa.pdf
Todo sobre el acta constitutiva de la empresa.pdf
La Paradoja educativa
 
2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado
GiselaBerrios3
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
Osiris Urbano
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
JAVIER SOLIS NOYOLA
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
ssusera6697f
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
20minutos
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
https://gramadal.wordpress.com/
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
EricaCouly1
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
Armando920824
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
almitamtz00
 
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT   en el Aula Ccesa007.pdfDocentes y el uso de chatGPT   en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Demetrio Ccesa Rayme
 
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdfGuia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Demetrio Ccesa Rayme
 
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Demetrio Ccesa Rayme
 

Último (20)

3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
 
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docxLecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
 
Todo sobre el acta constitutiva de la empresa.pdf
Todo sobre el acta constitutiva de la empresa.pdfTodo sobre el acta constitutiva de la empresa.pdf
Todo sobre el acta constitutiva de la empresa.pdf
 
2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
 
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT   en el Aula Ccesa007.pdfDocentes y el uso de chatGPT   en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
 
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdfGuia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
 
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
 

Control de Versiones con Subversion (SVN)

  • 1. Sistemas de Control de Fuentes Website
  • 2. Índice Introducción Funciones Why Use It ? Problema Elementos Instalación Operaciones Ejemplos 2
  • 3. Introducción ● Casos Verídicos ● Carlos, ¿Podrías pasarme una copia con los cambios que hiciste ayer ? ● Ana, esta función da error, ¿Has cambiado algo? ● He perdido la clase Empleado que implemente el lunes en practicas... Otra vez a implementar... ● Mañana quedamos en la biblioteca y terminamos la practica entre los dos. 3
  • 4. Introducción ● ¿A que se debe este tipo de situaciones? ● Proyecto/Prácticas en común desorganizadas ● Proceso donde la información no esta bajo control. 4
  • 5. Introducción ● Proyecto => Complejo ● Proyecto => “Varios” Desarrolladores ● Proyecto => Control de Información ● Proyecto => Herramientas / Técnicas ● Proyecto => Mantener Código Fuente Es fundamental un sistema de control de fuentes 5
  • 6. Funciones ● Hacer un seguimiento del estado de cada archivos a través del tiempo. ● Combinar contribuciones de varios desarrolladores. ● Almacenar un historial de cambios realizados a través del tiempo por diferentes personas. 6
  • 7. Funciones ● “El control de versiones es el arte del manejo de los cambios en la información” ● Retroceder y ver los cambios de los archivos antes de que se aplicaran ● Facilita el trabajo colaborativo 7
  • 8. Funciones ● El control de versiones no sólo es necesario para el software 8
  • 9. Why Use It ? ● Integridad de los Datos ● Historial de Cambios ● Repositorio Central – Favorece las copias de seguridad – Posibilidad de fallo en un disco local 9
  • 10. Why Use It ? ● Productividad ● No se pierde tiempo en la integración del trabajo de varios desarrolladores. ● Facilita el acceso a los datos de los desarrolladores. 10
  • 11. Why Use It ? ● Control y Distribución de Trabajo ● ¿Quién lo hace? ● ¿Qué hace? ● ¿Cuándo lo hace? 11
  • 12. Why Use It ? ● Lineas de Desarrollo (Ramas) ● Facilita el mantenimiento de varias lineas ● Ayuda a combinar diferentes lineas ● Al añadir nuevas características a una linea, estas se pueden propagar fácilmente a otras lineas de desarrollo. 12
  • 13. Why Use It ? ● Herramienta para la Ingeniería del Software. ● Un proceso de desarrollo de software necesita de ciertas herramientas para lograr su objetivo. ● Subversion es un proyecto de código abierto alojado por la comunidad Tigris.org que desarrolla diversas herramientas enfocadas a la ingeniería del software. 13
  • 19. Elementos ● Un repositorio, depósito o archivo es un lugar centralizado donde se almacena y mantiene información digital, habitualmente bases de datos o archivos informáticos ● Subversion es un repositorio en forma de árbol con una jerarquía de directorios y archivos. 19
  • 20. Elementos Repositorio Escribe Lee Lee Cliente Cliente Cliente 20
  • 21. Elementos ● Repositorio Centralizado ● Mas sencillo de usar que los distribuidos ● Control total sobre las versiones ● Limitaciones en el acceso ● Se reduce el número de conflictos 21
  • 22. Elementos ● Copia de Trabajo ● Copia Local de los archivos y directorios del repositorio. A ella se incorporarán los cambios o pondrán a disposición los tuyos cuando tú se lo indiques. ● Directorio ./svn 22
  • 23. Elementos ● Revisión ● Es una “instantánea” del repositorio en un momento particular en el tiempo, cada vez que el servidor acepta un envío se crea una nueva revisión. ● Para identificarlas se utilizan números comenzando desde cero. 23
  • 24. Elementos ● Ramas (Branch) ● Lineas de desarrollo independientes a otras, pero comparten una historia común si mira lo suficientemente atrás en el tiempo. 24
  • 25. Elementos ● Etiquetas (Tags) ● Es una rama sobre la que no se incluyen cambios ● Contiene el código/ficheros de una revisión especifica. ● Etiquetamos la revisión para establecer un hito en la linea de desarrollo. 25
  • 26. Instalación ● Debes elegir tu camino.... ● La pastilla roja ● sudo apt-get install subversion ● La pastilla azul ● RapidSVN ● TortoiseSVN http://subversion.apache.org/packages.html 26
  • 27. Instalación ● Netbeans ● Plug-in subversion ● Guia de Uso ● Eclipse ● Subclipse ● Website 27
  • 29. Operaciones ● svn -- version ● svn help subcomando – add – import – checkout 29
  • 30. Operaciones ● svn checkout https://svnosl.googlecode.com/svn/ svnosl --username mi_usuario 30
  • 31. Operaciones ● chekout : Obtener una copia local de la ultima revisión ● --username Solo en el checkout inicial ● Aparece un directorio svnosl que contiene los ficheros del repositorio ● Se lanzan las ordenes sobre ese directorio 31
  • 32. Operaciones ● Estructura común del repositorio ● /trunk Contiene la línea principal desarrollo ● /branch Contiene las ramas ● /tags Contiene los tags ● svn checkout https://svnosl.googlecode.com/svn/trunk svnosl --username mi_usuario 32
  • 33. Ciclo de Trabajo ● Actualizar la copia de trabajo ● Modificar la copia de trabajo ● Comprobar los cambios realizados ● Deshacer ciertos cambios ● Resolver conflictos ● Guardar los cambios realizados 33
  • 34. Actualizar la copia de Trabajo ● svn update ● Indica los cambios que existen entre nuestra copia de trabajo y el repositorio, con respecto a la ultima revisión ● svn update -- revision 23 34
  • 35. Actualizar la copia de Trabajo 35
  • 36. Modificar la copia de Trabajo ● svn add fichero ● svn delete fichero ● svn copy fichero ● svn move fichero ● svn mkdir directorio ● Crea el directorio y lo añade ( mkdir + add ) 36
  • 37. Comprobar Cambios ● svn status ● Muestras los ficheros donde hay cambios ● svn status – q ● svn status – u ● svn status – v 37
  • 39. Comprobar Cambios ● svn diff ● Ver las diferencias con exactitud ● Por defecto el ultimo fichero modificado ● svn diff fichero 39
  • 41. Comprobar Cambios ● Para una determinada revisión ● svn diff -r 26 ejemplo.h 41
  • 42. Deshacer Cambios ● svn revert ● Mediante la orden diff se observa un error y se corrige el cambio mediante esta orden ● Ejecutamos svn delete por error 42
  • 43. Resolver Conflictos ● Aparecen cuando actualizamos la copia de trabajo 43
  • 44. Resolver Conflictos ● Aparecen los siguientes ficheros ● filename.mine Mi Archivo ● filename.rOLDREV Version original ● filename.rNEWREV Version repositorio 44
  • 45. Resolver Conflictos ● Postpone (svn no admite commit) 45
  • 48. Resolver Conflictos ● svn resolve 48
  • 49. Guardar Cambios ● svn commit -m “Corregido makefile” 49
  • 50. Ciclo de Trabajo ● Actualizar la copia de trabajo ● Modificar la copia de trabajo ● Comprobar los cambios realizados ● Deshacer ciertos cambios ● Resolver conflictos ● Guardar los cambios realizados 50
  • 51. Operaciones ● svn log ● svn log -r 20 -v ● svn log -r 10:20 ● svn log -r 20:15 51
  • 52. Operaciones ● svn list -v directorio (URL) ● Ficheros disponibles en el directorio 52
  • 53. Operaciones ● Ramas ● svn copy ● svn merge ● svn diff ● svn switch 53
  • 56. Operaciones ● Tags (svn copy) 56
  • 58. 58
  • 59. Licencia Fco Javier Lucena Lucena fran.lucena@gmail.com http://www.franlucena.es 59