PDF de programación - Control de versiones con Subversion - Introducción

Imágen de pdf Control de versiones con Subversion - Introducción

Control de versiones con Subversion - Introduccióngráfica de visualizaciones

Publicado el 6 de Julio del 2017
649 visualizaciones desde el 6 de Julio del 2017
267,9 KB
23 paginas
Creado hace 14a (24/02/2010)
Control de versiones con

Subversion
Introducción

Diseño de Sistemas de Información 2009/10

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

MADS Group - Departamento de Computación

Víctor M. Gulías ([email protected])
David Cabrero ([email protected])
Laura Castro ([email protected])

Javier París ([email protected])
David Martínez ([email protected])

24 de febrero de 2010

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

1 / 23

Contenido

1 Sistemas de control de versiones

2 Subversion: uso elemental

3 Subversion: características avanzadas

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

4 Conclusiones

5 Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

2 / 23

Concepto
Sistemas de control de versiones

Un mecanismo para:

Coordinar las modificaciones de un conjunto
de usuarios sobre un mismo conjunto de ficheros
Seguir el rastro de los cambios, identificando:

Quién hizo qué
Cuándo lo hizo
Por qué lo hizo
Qué más se hizo

Por ello, también es de utilidad para un solo
desarrollador
Recuperar versiones anteriores

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

3 / 23

Concepto (y II)
Sistemas de control de versiones

¿Cómo funciona?

Existe un repositorio común (centralizado o
distribuido) donde se almacenan todos los
cambios/versiones
Los desarrolladores trabajan en su copia local e
incorporan las modificaciones al repositorio
El sistema registra las modificaciones y los
comentarios asociados
El sistema gestiona las distintas versiones
almacenadas en el repositorio

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

4 / 23

Concurrent Version System (CVS)
Sistemas de control de versiones

Control de versiones

con Subversion

DSI 2009/10

Creado a partir del proyecto de Dick Grune
(1986), siendo aún hoy un desarrollo activo de
uso muy extendido
Tiene algunas limitaciones ligadas a su diseño
inicial que empujan a su reemplazo por sistemas
alternativos, que solucionan algunos de sus
problemas:

Commits atómicos
Identificador de archivo distinto de la ruta de
archivo
Permiten trabajo off-line
Soporte de branchs mejorado

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

5 / 23

Alternativas a CVS
Sistemas de control de versiones

Arch (arch.fifthvision.net)

Gran conjunto de funcionalidades
Escrito en shell scripts

GIT (www.kernel.org/git)

Usado en el desarrollo del kernel de Linux
Distribuido, no centralizado
Substituto de Bitkeeper

Perforce (www.perforce.com)

Comercial

Subversion (subversion.tigris.org)

Creado a semejanza de CVS, eliminado sus
carencias

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

6 / 23

Modus operandi
Sistemas de control de versiones

Para cada proyecto, se crea un repositorio
Cada desarrollador:

1 Obtiene una copia del repositorio

(copia local)

2 Trabaja sobre su copia local
3 Eventualmente:

Actualiza su copia local con los cambios
que otros desarrolladores han realizado
Resuelve conflictos
Integra sus cambios, enviándolos al
repositorio

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

7 / 23

Comandos básicos
Subversion: uso elemental

Administrador (svnadmin)

1 Crear un repositorio
2 Opcionalmente: poblar el repositorio

Usuarios/desarrolladores (svn)

1 Obtener una copia del repositorio
2 Trabajar sobre la copia local
3 Comprobar el estado del repositorio y de la

copia local
Integrar los cambios propios al repositorio

4
5 Actualizar la copia local con los cambios que

haya en el repositorio

6 Resolver conflictos

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

8 / 23

Creación de un repositorio
Subversion: uso elemental

En la /ruta/al/repositorio, crearemos un
subdirectorio SVN

mkdir /ruta/al/repositorio/SVN

Se usa la orden svnadmin create para
inicializar el repositorio:

svnadmin create
/ruta/al/repositorio/SVN/nombre-repositorio

Se generará la estructura de gestión del
repositorio

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

9 / 23

Creación de un repositorio (y II)
Subversion: uso elemental

Sólo las órdenes svnadmin deben usarse para
interactuar con esta estructura de gestión

/ruta/al/repositorio/SVN/

nombre-repositorio/README.txt

URL del repositorio:

file:///ruta/local/al/repositorio/

SVN/nombre-repositorio

http://ruta/remota/al/repositorio/

SVN/nombre-repositorio

La estructura de directorios es libre

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

10 / 23

Inserción de datos en el repositorio
Subversion: uso elemental

Control de versiones

con Subversion

DSI 2009/10

Se pueden a añadir ficheros al repositorio desde
cero
Pero si ya disponemos de una estructura inicial,
podemos usarla para poblar el repositorio

svn import /ruta/ficheros/iniciales URL

Registro de comentarios
Variable de entorno EDITOR
SVN trata cada tipo de fichero adecuadamente
(texto, binario)

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

11 / 23

Descarga de una copia de trabajo
Subversion: uso elemental

Para comenzar a trabajar es necesario descargar
nuestra copia de trabajo personal

svn checkout URL [/ruta/de/trabajo]

HEAD (última versión) del repositorio
Directorio .svn
Sobre la copia de trabajo los archivos pueden
modificarse con normalidad

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

12 / 23

Edición de la copia de trabajo
Subversion: uso elemental

Manipulación básica de archivos:

Añadir o eliminar ficheros del repositorio

svn add ELEMENTO
svn delete ELEMENTO

Añadir un directorio

svn mkdir RUTA

Copiar o mover ficheros

svn copy ORIGEN DESTINO
svn move ORIGEN DESTINO

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

13 / 23

Edición de la copia de trabajo (y II)
Subversion: uso elemental

Control de versiones

con Subversion

DSI 2009/10

Consultar los cambios que se han hecho sobre la
copia de trabajo local

svn status

(Modified, Added, Deleted. . . )

Visualizar los cambios hechos respecto a la
copia de partida

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

svn diff [ELEMENTO]

Descartar cualquier cambio y volver a la copia
de partida

svn revert ELEMENTO

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

14 / 23

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
versiones

Subversion: uso
elemental

Subversion:
características
avanzadas

Conclusiones

Bibliografía

Integración/actualización de
cambios
Subversion: uso elemental

Actualización de la copia de trabajo local

svn update

Integración de nuestras modificaciones en el
repositorio

svn commit

Es importante documentar los cambios
La nueva versión debe funcionar
Consulta del registro de cambios

svn log [ELEMENTO]

DSI 2009/10 (UDC)

Control de versiones con Subversion

24 de febrero de 2010

15 / 23

Resolución de conflictos
Subversion: uso elemental

Conflicto
Desde la descarga de la copia de trabajo (checkout)
hasta el momento en que de nuevo interactuamos
con el repositorio (update/commit), otro(s)
desarrollador(es) puede(n) haber modificado y
confirmado archivos también alterados por nosotros

Ante esta situación, el sistema no puede decidir, no
puede corromper el repositorio:

un svn commit fallará anulando la integración
de nuestros cambios

Control de versiones

con Subversion

DSI 2009/10

Contenido

Sistemas de control de
version
  • Links de descarga
http://lwp-l.com/pdf4950

Comentarios de: Control de versiones con Subversion - Introducción (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad