Desarrollo Subversivo
-
Upload
ariel-graneros -
Category
Technology
-
view
1.585 -
download
1
description
Transcript of Desarrollo Subversivo
- 1. Desarrollo Subversivo
2. Agenda
- El modo tradicional de trabajo.
- Control de versiones?
- Subversion.
- Ciclo de trabajo.
- Uso en consola.
- Interfaces grficas.
- Otros recursos.
- Cierre.
3. El esquema de trabajo tradicional.
- Gestin de cambios en archivos y directorios?
-
- Almacenamiento simple de archivos.
-
-
- Sistema de archivos.
-
-
-
- Servidor de archivos.
-
-
- No atomicidad
-
-
- Cambios a medias (BS?)
-
- Imposibilidad de registro histrico.
- Imposibilidad de revertir cambios.
-
- A menos que se tengan n backups por todos lados...
- Impedir cambios.
-
- Los contratos sociales son ineficientes.
- La prdida de tiempo y esfuerzo es inevitable!
4. Control de versiones?
- Gestin de cambios en archivos y directorios.
-
- Historicidad
-
- Atomicidad
- Posibilidad de registro histrico.
-
- Por archivo
-
- Por autor
-
- Por lnea de cdigo
- Revertir cambios.
- Integrar cambios.
- Reducir impacto de conflictos.
- Impedir cambios.
-
- Proteger archivos o directorios.
5. Subversion
- Un sistema de control de versiones.
- Free/Open Source (cumple con las guas Debian)
- Maduro (se desarrolla desde 2000)
- Naci para resolver los problemas de CVS
-
- Deba lucir familiar para usuarios CVS
-
- No introduce ningn paradigma revolucionario
- Se asienta sobre estndares y productos abiertos.
6. Subversion
- Versionado de directorios
- Histrico real de versiones.
- Atomicidad.
- Abstraccin del modelo de acceso/red empleado.
- Gestin eficiente de cambios.
- Facilidad de branches y tags a bajo costo.
- Metadatos.
- Extensiva documentacin
- Excelentes APIs
7. La arquitectura de Subversion 8. Iniciando el trabajo con Subversion
- Servidor.
-
- Crear repositorio.
-
- Administrar
-
- Proveer URL/permisos
- Cliente.
-
- Lnea de comandos.
-
- GUIs
-
- Iniciar ciclo de trabajo
- Decidir sobre el esquema de comunicacin (o no).
-
- Apache/WebDAV
-
-
- Sobre HTTP
-
-
-
- Sobre SSL
-
-
- SVNserve protocol (TCP 3690)
-
-
- Sobre texto plano
-
-
-
- Sobre tnel SSH
-
-
- Local ( file:/// ...)
- Decidir sobre la organizacin de los archivos (o no).
9. Breakdown: Servidor
- svnadmin es LA herramienta para crear, administrar y reparar repositorios SVN.
- Existen unas pocas herramientas como svnlook, svndumpfilter y svnsync, pero su uso es espordico y los repositorios SVN requieren poco mantenimiento.
- El motor subyacente de almacenamiento de cambios permite obtener copias en caliente sin detener el repositorio.
10. Breakdown: Servidor 11. Breakdown: Servidor 12. Breakdown: Servidor
- Configuracin de Apache2:
-
- Activar mod_dav y mod_dav_svn
-
- Agregar un handler para cada repositorio:
13. Breakdown: Cliente (lnea de comandos)
- Crear una copia de trabajo local (1 sola vez)
- Importar estructura y archivos preexistentes (1 sola vez)
- Iniciar el ciclo de trabajo propiamente dicho.
14. Breakdown: Cliente (lnea de comandos)
- svn add: agregar archivos al working copy, para su posterior envo a repositorio:
15. Breakdown: Cliente (lnea de comandos)
- svn commit: envo efectivo y atmico de los cambios efectuados localmente al repositorio central de cdigo.
16. Breakdown: Cliente (GUI con Kioslave)
- Inicia el ciclo de trabajo propiamente dicho:
-
- svn update
17. Breakdown: Cliente (GUI con Kioslave)
-
- Se efectan cambios localmente.
18. Breakdown: Cliente (GUI con Kioslave)
- Se envan los cambios locales a repositorio.
19. Otros clientes SVN
- Windows
-
- CLI
-
- TortoiseSVN (extensin de Explorer)
- Mac
-
- SCPlugin (extensin de Finder)
- Otros
-
- Subclipse (plugin para Eclipse)
20. Otras herramientas en torno a SVN (instalables)
- Trac
21. Otras herramientas en torno a SVN (instalables)
- Trac
22. Otras herramientas en torno a SVN (instalables)
- WebSVN
23. Otras herramientas en torno a SVN (online)
- Ohloh.net
24. Otras herramientas en torno a SVN (online)
- Ohloh.net
25. Otras herramientas en torno a SVN (online)
- Assembla.com
26. Mas referencias en lnea
- Informacin y aplicaciones Subversion:
-
- http://subversion.tigris.org
-
- http://svnbook.red-beans.com
-
- http://tortoisesvn.tigris.org
-
- http://trac.edgewall.com
- Hosting Subversion para proyectos FOSS:
-
- http://sourceforge.net
-
- http://www.assembla.com
-
- http://opensvn.csie.org
27. Cierre
- Gracias, espero que usen SVN en sus prximos proyectos.
- (o cualquier otro software de control de versiones) ;)
28. Autor Ariel Graneros - [email protected] Esta obra est bajo unalicenciade Creative Commons.