Subversion

Embed Size (px)

DESCRIPTION

Introducción al uso de Sistemas de Versionado con Subversion

Citation preview

  • 1. Subversion

2. Que es Subversion? 3.

  • Que es Subversion?
  • Es un sistema de control de versiones.

4.

  • Que es Subversion?
  • Es un sistema de control de versiones.
  • Que es un sistema de control de versiones?

5.

  • Que es Subversion?
  • Es un sistema de control de versiones.
  • Que es un sistema de control de versiones?
  • ?

6. Problemas Cada uno desarrolla por separado, luego enva el cdigo a sus compaeros 7. Problemas

  • Cada uno desarrolla por separado, luego enva el cdigo a sus compaeros
  • Quien se encarga de compilar todo el cdigo?

8. Problemas

  • Cada uno desarrolla por separado, luego enva el cdigo a sus compaeros
  • Quien se encarga de compilar todo el cdigo?
  • No es profesional

9. Problemas Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP 10. Problemas Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP 11. Problemas

  • Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP
  • Como evitamos sobrescribir?

12. Problemas

  • Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP
  • Como evitamos sobrescribir?
  • Como sabemos que cambios realizo nuestro compaero?

13. Problemas

  • Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP
  • Como evitamos sobrescribir?
  • Como sabemos que cambios realizo nuestro compaero?
  • Como integramos sus cambios con los nuestros?

14. Problemas

  • Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP
  • Como evitamos sobrescribir?
  • Como sabemos que cambios realizo nuestro compaero?
  • Como integramos sus cambios con los nuestros?
  • Como hacemos si queremos tener un historial o seguimiento de los cambios de los archivos?

15. Problemas

  • Cada uno sube el cdigo a un lugar centralizado, por ejemplo un servidor FTP
  • Como evitamos sobrescribir?
  • Como sabemos que cambios realizo nuestro compaero?
  • Como integramos sus cambios con los nuestros?
  • Como hacemos si queremos tener un historial o seguimiento de los cambios de los archivos?
  • Sigue siendo poco profesional

16. Solucin?? 17. Solucin?? Usar un sistema de control de versiones Subversion 18. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor

19. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que

20. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones

21. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones
  • Detecta los conflictos
    • Antes de subir nada, svn comprueba si otra persona ha cambiado los archivos

22. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones
  • Detecta los conflictos
    • Antes de subir nada, svn comprueba si otra persona ha cambiado los archivos
  • Permite realizarmerges

23. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones
  • Detecta los conflictos
    • Antes de subir nada, svn comprueba si otra persona ha cambiado los archivos
  • Permite realizarmerges
  • Permite establecerlocks

24. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones
  • Detecta los conflictos
    • Antes de subir nada, svn comprueba si otra persona ha cambiado los archivos
  • Permite realizarmerges
  • Permite establecerlocks
  • Permite trabajar con copias ( branchesytags )

25. Caractersticas

  • Sistema centralizado para compartir informacin
    • Cliente/Servidor
  • Guarda historial de todo los archivos
    • Quien, cuando y que
  • Permite ver los cambios entre distintasrevisiones
  • Detecta los conflictos
    • Antes de subir nada, svn comprueba si otra persona ha cambiado los archivos
  • Permite realizarmerges
  • Permite establecerlocks
  • Permite trabajar con copias ( branchesytags )
  • Es atmico(todo o nada)
    • Tu set de modificaciones nunca quedar a medio subir

26. Comandos bsicos

  • Bajo unacopiacon la que voy atrabajar (working copy)
    • checkout
  • Subo los cambios alrepositorio
    • commit
  • Actualizo la copia de trabajo
    • update

27. Funcionamiento

  • Revisiones
    • Nmero entero incremental asignado a cada modificacin (commit)
    • HEAD es un alias para la ultima revisin
    • Muchos comandos svn aceptan elegir la revisin

28. Estructura

  • /trunk

29. Estructura

  • /trunk
    • Rama principal u original

30. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir

31. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir
    • Integracin continua

32. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir
    • Integracin continua
  • /branches

33. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir
    • Integracin continua
  • /branches
    • Desarrollos paralelos

34. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir
    • Integracin continua
  • /branches
    • Desarrollos paralelos
    • /branches/demo (versin reducida de prueba)
    • /branches/ver1.1 (correccin de bugs)

35. Estructura

  • /trunk
    • Rama principal u original
    • Es un lugar sagrado, testear antes de subir
    • Integracin continua
  • /branches
    • Desarrollos paralelos
    • /branches/demo (versin reducida de prueba)
    • /branches/ver1.1 (correccin de bugs)
  • /tags
    • Permite etiquetar una revisin con un nombre ms amistoso, Ej.release-1.0

36. Estructura

  • Ciclo de un proyecto

37. Resolucin de problemas

  • Subversionnosiempre sabe como integrar los cambios

38. Resolucin de problemas

  • Subversionnosiempre sabe como integrar los cambios
  • Nos olvidamos de realizarupdate .

39. Resolucin de problemas

  • Subversionnosiempre sabe como integrar los cambios
  • Nos olvidamos de realizarupdate .
  • La copia de trabajo conlocko corrupta. La mayora de estos problemas se solucionan haciendo uncleanupde la copia de trabajo.