Your SlideShare is downloading. ×
Desarrollo Subversivo
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Desarrollo Subversivo

1,566
views

Published on

Un vistazo a las ventajas del trabajo con control de versiones en general, y con subversion en particular.

Un vistazo a las ventajas del trabajo con control de versiones en general, y con subversion en particular.

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,566
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
51
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Desarrollo Subversivo
  • 2. Agenda
    • El modo “tradicional” de trabajo.
    • Control de versiones?
    • Subversion.
    • Ciclo de trabajo.
    • Uso en consola.
    • Interfaces gráficas.
    • Otros recursos.
    • Cierre.
  • 3. El esquema de trabajo “tradicional”.
    • Gestión 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 histórico.
    • Imposibilidad de revertir cambios.
      • A menos que se tengan n “backups” por todos lados...
    • Impedir cambios.
      • Los contratos sociales son ineficientes.
    • La pérdida de tiempo y esfuerzo es inevitable!
  • 4. Control de versiones?
    • Gestión de cambios en archivos y directorios.
      • Historicidad
      • Atomicidad
    • Posibilidad de registro histórico.
      • Por archivo
      • Por autor
      • Por línea de código
    • 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 guías Debian)
    • Maduro (se desarrolla desde 2000)
    • Nació para resolver los problemas de CVS
      • Debía lucir familiar para usuarios CVS
      • No introduce ningún paradigma revolucionario
    • Se asienta sobre estándares y productos abiertos.
  • 6. Subversion
    • Versionado de directorios
    • Histórico real de versiones.
    • Atomicidad.
    • Abstracción del modelo de acceso/red empleado.
    • Gestión eficiente de cambios.
    • Facilidad de branches y tags a bajo costo.
    • Metadatos.
    • Extensiva documentación
    • Excelentes APIs
  • 7. La arquitectura de Subversion
  • 8. Iniciando el trabajo con Subversion
    • Servidor.
      • Crear repositorio.
      • Administrar
      • Proveer URL/permisos
    • Cliente.
      • Línea de comandos.
      • GUIs
      • Iniciar ciclo de trabajo
    • Decidir sobre el esquema de comunicación (o no).
      • Apache/WebDAV
        • Sobre HTTP
        • Sobre SSL
      • SVNserve protocol (TCP 3690)
        • Sobre texto plano
        • Sobre túnel SSH
      • Local ( file:/// ...)
    • Decidir sobre la organización 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 esporádico 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
    • Configuración de Apache2:
      • Activar mod_dav y mod_dav_svn
      • Agregar un handler para cada repositorio:
  • 13. Breakdown: Cliente (línea 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 (línea de comandos)
    • svn add: agregar archivos al working copy, para su posterior envío a repositorio:
  • 15. Breakdown: Cliente (línea de comandos)
    • svn commit: envío efectivo y atómico de los cambios efectuados localmente al repositorio central de código.
  • 16. Breakdown: Cliente (GUI con Kioslave)
    • Inicia el ciclo de trabajo propiamente dicho:
      • svn update
  • 17. Breakdown: Cliente (GUI con Kioslave)
      • Se efectúan cambios localmente.
  • 18. Breakdown: Cliente (GUI con Kioslave)
    • Se envían los cambios locales a repositorio.
  • 19. Otros clientes SVN
    • Windows
      • CLI
      • TortoiseSVN (extensión de Explorer)
    • Mac
      • SCPlugin (extensión 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 línea
    • Información 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 próximos proyectos.
    • (o cualquier otro software de control de versiones) ;)
  • 28. Autor Ariel Graneros - dalecter@hotmail.com Esta obra está bajo una licencia de Creative Commons.

×