51
Ing. Ismael Castañeda Fuentes, MSc Grupo de Investigación UNBD Universidad Nacional de Colombia Marzo de 2011 REPOSITORIOS

REPOSITORIOS

  • Upload
    laird

  • View
    50

  • Download
    0

Embed Size (px)

DESCRIPTION

REPOSITORIOS. Ing. Ismael Castañeda Fuentes, MSc Grupo de Investigación UNBD Universidad Nacional de Colombia Marzo de 2011. Objetivos. Conocer las ventajas de usar un repositorio, en el desarrollo de un proyecto. Aprender los conceptos básicos del repositorio - PowerPoint PPT Presentation

Citation preview

Page 1: REPOSITORIOS

Ing. Ismael Castañeda Fuentes, MScGrupo de Investigación UNBD

Universidad Nacional de ColombiaMarzo de 2011

REPOSITORIOS

Page 2: REPOSITORIOS

Objetivos

Conocer las ventajas de usar un repositorio, en el desarrollo de un proyecto.

Aprender los conceptos básicos del repositorio

Aprender a usar el repositorio

Page 3: REPOSITORIOS

El software es dinámico

Cambios en el software por:

Corrección de defectos

Desarrollo iterativo

Cambios de ambiente

Cambios solicitados por el cliente/usuario

Los cambios en el software pueden generan cambios en:

Requerimientos y especificaciones

Modelos de análisis, diseño, …

Documentación

Código fuente

Código ejecutable

Casos de prueba

Page 4: REPOSITORIOS

Gestión de cambios - Procedimiento

Solicitud de cambio

Aprobación/rechazo del cambio

Asignación del trabajo

Aseguramiento de calidad

Baja de versión inicial

Alta de la nueva versión

Auditoría

Comunicación a los afectados

Page 5: REPOSITORIOS

Servidor de archivos versionados

Servidor de archivos con características extras

Cada archivo tiene asociado un historial de modificaciones

Los cambios en un archivo pueden deshacerse o recuperarse hasta cualquier punto en su historial

Recuerda la estructura del sistema de archivos en cualquier punto del historial (directorios)

Es posible ver cualquier archivo tal como se encontraba en cualquier punto del historial

Page 6: REPOSITORIOS

Versionamiento

El control de versiones se realiza principalmente en la industria informática para controlar las distintas versiones del código fuente

Los mismos conceptos son aplicables a otros ámbitos, no sólo para código fuente sino para documentos, modelos, imágenes …

Page 7: REPOSITORIOS

Desarrollo de un proyecto

1 2 3 4 5 6 7 8

1 2 3

1 2 3 4 5

Ing 1

Ing 2

Ing 3

Page 8: REPOSITORIOS

1 2 3 4 5 6 7 8

1 2 3

1 2 3 4 5

Ing 1

Ing 2

Ing 3

Versión Alfa 1Versión Beta1

Release 1

Desarrollo de un proyecto

Page 9: REPOSITORIOS

Desarrollo de un proyecto

1 2 3 4 5 6 7 10

1 2 3

1 2 3 4 5

Ing 1

Ing 2

Ing 3

Versión 1

Versión 2

Versión 3

Error reportado sobre la Versión 1

1.1 1.2 1.3

8 9

Page 10: REPOSITORIOS

Control de versiones

ManualAdministrando directorios

Copias de seguridad

Usando comprimidos, …

Con herramientas de software – RepositoriosCVS (Concurrent Versions System )

Subversion SVN

Mercurial

Git

ClearCase

BitKeeper, Select, …

Usando servicios que facilitan uso de repositorios:SourceForge (http://repository.sourceforge.net)

Google Code (www.//code.google.com)

Projec Kenai (http://kenai.com)

CodePlex (http://www.codeplex.com)

Page 11: REPOSITORIOS

Google Code

Page 12: REPOSITORIOS

Project Kenai

Page 13: REPOSITORIOS

Source Forge

Page 14: REPOSITORIOS

CodePlex

Page 15: REPOSITORIOS

Repositorios

Repositorio

Sitio centralizado donde se almacena y mantiene información digital

El repositorio debe permitirAgregar

Modificar de forma concurrente

Reunir modificaciones en una sola

Controlar versiones alternas

Comparar

Repositorio Subversion

Sistema para control de versiones

Page 16: REPOSITORIOS

Subversion - Formas de acceso

A través del cliente Tortoise

A través del servidor

A través de Internet, cuando la persona está en un computador que no es de su uso personal, por ejemplo cuando se va a un café Internet como mecánica en una sola vía

Por medio de un IDE

Page 17: REPOSITORIOS

Tortoise SVN - CHECKOUT

En el explorador de Windows:

En un directorio vacio

Clic derecho

Copia inicial

Ejemplo de URL para copia inicial: https://168.176.36.28:4443/piga

Page 18: REPOSITORIOS

Tortoise SVN - CHECKOUT

Page 19: REPOSITORIOS

Acceso al Repositorio

Repositorio

Copiadel

Repositorio

Usuario

Update

Page 20: REPOSITORIOS

Acceso al Repositorio

Repositorio

Informaciónlocal

Usuario

Commit

Page 21: REPOSITORIOS

Lectura compartida al Repositorio

Repositorio

Archivo A

Archivo A Archivo A

Pedro María

Page 22: REPOSITORIOS

Trabajo simultáneo en el cliente

Repositorio

Archivo A

Pedro

Archivo A

María

Archivo A

Page 23: REPOSITORIOS

Repositorio

Archivo AArchivo A

Escritura al Repositorio

Pedro

Archivo A

María

Archivo A

X¡Problema!

Page 24: REPOSITORIOS

Escritura controlada en el Repositorio 1 de 5

Repositorio

Archivo A

Archivo A

Pedro

BloqueaPedro

Page 25: REPOSITORIOS

Escritura controlada en el Repositorio 2 de 5

Repositorio

Archivo A

Pedro María

Archivo A

BloqueaPedro

X¡Problema!

Page 26: REPOSITORIOS

Escritura controlada en el Repositorio 3 de 5

Repositorio

Pedro

Archivo A

Archivo A

Page 27: REPOSITORIOS

Escritura controlada en el Repositorio 4 de 5

Repositorio

Pedro María

Archivo A

Archivo A

Archivo AArchivo A

BloqueaMaría

Page 28: REPOSITORIOS

Escritura controlada en el Repositorio 5 de 5

Repositorio

Pedro María

Archivo A Archivo A

Archivo A

Page 29: REPOSITORIOS

Mezcla (Merge) 1 de 4

Repositorio

Archivo A

Archivo A

Pedro María

Archivo A

Page 30: REPOSITORIOS

Mezcla (Merge) 2 de 4

Repositorio

Archivo A

Pedro María

Archivo A

Archivo A

X¡Problema!

Archivo A

Page 31: REPOSITORIOS

Mezcla (Merge) 3 de 4

Repositorio

Archivo A

Pedro María

Archivo A

Archivo A

Archivo A Archivo A

Page 32: REPOSITORIOS

Mezcla (Merge) 4 de 4

Repositorio

Archivo A

Pedro María

Archivo A

Archivo AArchivo A

Archivo A

Page 33: REPOSITORIOS

Update

Repositorio

Archivo A

Pedro María

Archivo A

Archivo AArchivo A

Archivo AArchivo A

Page 34: REPOSITORIOS

Iconos Internet Explorer

La carpeta en la copia de trabajo está sin modificaciones y sin conflictosEsto no significa que la copia de trabajo esté actualizada a la última versión

Hay cambios pendientes por subir

Hay archivos en conflicto.

Tortoise SVN

Page 35: REPOSITORIOS

Tortoise SVN

Page 36: REPOSITORIOS

Tortoise SVN - Operaciones de usuario

Checkout

Descargar un proyecto del repositorio a una carpeta local

Update

Actualizar la copia de trabajo.

Al actualizar, se muestra un listado con los archivos nuevos, eliminados o modificados, con una marca al comienzo de cada uno:

A – Se ha añadido un archivo (quizás por otro usuario)

Page 37: REPOSITORIOS

C – Un archivo que fue modificado en la copia de trabajo, fue modificado por otro usuario, y ha quedado en

conflicto.

G - Un archivo que fue modificado en la copia de trabajo, fue modificado por otro usuario, y se ha combinado satisfactoriamente (sin conflicto)

U – Un archivo que cambió se ha actualizado.

D – Un archivo se ha borrado

ResolvedMarcar como resuelto el conflicto

Tortoise SVN - Operaciones de usuario

Page 38: REPOSITORIOS

AddAgregar un archivo o carpeta

DeleteBorrar un archivo o carpeta

LogMostrar información acerca de las versiones de una carpeta o archivo

LockBloquear cambios sobre un archivo

Tortoise SVN - Operaciones de usuario

Page 39: REPOSITORIOS

Copy

Copiar

Move

Mover

mkdir

Crear un directorio

Diff

Mostrar la diferencia entre la copia local y la base.Mostrar la diferencia de un archivo entre una revisión y otra

Tortoise SVN - Operaciones de usuario

Page 40: REPOSITORIOS

CommitSubir los cambios hechos en la copia de trabajo al repositorio.

Esto genera una nuevo número de revisión en el repositorio. Puede fallar si los archivos que se desean subir han sido modificados por otro usuario. En este caso se deb hacer primero update y luego resolver el posible conflicto.

RevertRevertir cambios hechos en copia de trabajo

Tortoise SVN - Operaciones de usuario

Page 41: REPOSITORIOS

statInformación acerca del estado de los archivos en la carpeta local:

C – En Conflicto

M – Modificados

A – Añadidos

D – Borrados

L – Bloqueados

? – No versionado

! – Archivo faltante (Eliminado , sin usar el comando adecuado – delete)

Ver mas con svn help stat

Tortoise SVN - Operaciones de usuario

Page 42: REPOSITORIOS

SVN - Formas de acceso

A través del cliente Tortoise

A través de Internet, cuando la persona está en un computador que no es de su uso personal, por ejemplo cuando se va a un café Internet como mecánica en una sola vía. (Cuidados que hay que tener)

A través del servidor

Page 43: REPOSITORIOS

SVN - Acceso por Internet

Escribir la dirección

https://168.176.36.28:4443/piga/

Hacer clic en continue to this website (not recommended)

Digitar el usuario y contraseña de acceso al repositorio.

Page 44: REPOSITORIOS

SVN - Acceso por Internet

Page 45: REPOSITORIOS

SVN - Seguridad

Acceso por HTTPS

Acceso sólo a usuarios registrados

Agrupación de usuarios

Permisos por usuario y por grupos

Lectura exclusivamente

Lectura y escritura

Ninguno

Page 46: REPOSITORIOS

SVN - Buenas prácticas

Antes de comenzar a trabajar, actualizar la copia de trabajo

Resolver un posible conflicto revisando los cambios de la nueva versión e incluyendo los nuevos

Evitar simplemente borrar archivo en conflicto y reemplazarlo por el propio. Con esto se ignoran los cambios hechos por alguien

Dejar un log descriptivo con cada nueva versión

Page 47: REPOSITORIOS

Referencias

Tortoise SVN - Comparación

Page 48: REPOSITORIOS

Tortoise SVN - Comparación

Page 49: REPOSITORIOS

Tortoise SVN - Comparación

Page 50: REPOSITORIOS

PowerDesigner - Comparación

Page 51: REPOSITORIOS

SVN – IDE’s

En desarrollo, cuando se están haciendo programas, es muy práctico trabajar con un IDE e integrarlo con los repositorios

Eclipse con Subclipse

NetBeans