Subversion
- Commits solo a servidor
- Si no tenemos internet no podremos tener acceso al repositorio y por lo tanto no podremos enviar nuestros commits
- Menor velocidad
Git
- Coomits a repositorio local y a servidor
- Si no hay internet podemos acceder al repositorio local y enviar nuestros commits
- Mayor velocidad
COMANDOS entre SVN y GIT
Resumen de las diferencias:
- Git es mucho más rápido que Subversion
- Subversion le permite ver sólo un subárbol de un repositorio; Git necesita clonar el repositorio completo (incluyendo el historial) y crear una copia de trabajo que refleje al menos un subconjunto de los elementos que están bajo control de versiones.
- Los repositorios Git son mucho más pequeños que Subversiones. SVN requiere 30 veces más el espacio en disco para almacenar el mismo historial.
- Git fue diseñado para ser totalmente distribuida desde el principio, lo que permite que cada desarrollador tenga pleno control local.
- Las ramas (branches) Git son más simples y menos pesados que Subversion
- Las ramas (branches) Git llevan toda su historia completa
- La fusión (merge) en Git no obliga a recordar que la revisión que se fusionaron a partir de (este beneficio se evita con el lanzamiento de Subversion 1.5)
- Git proporciona una mejor auditoría de eventos de ramificación (branch) y fusión (merge)
- Los formatos de archivo de los repositorios de Git son simples, por lo que la reparación es fácil y la corrupción es rara.
- La copia de seguridad de los repositorios centrales de Subversion es potencialmente más simple
- El clonado de repositorios Git actua como repositorio de copias de seguridad completas
- Interfaz de usuario de Subversion es más maduro que Git. Actualmente Subversion tiene una gama más amplia de GUI’s que Git. Por ejemplo, hay plugins disponibles de SVN para los IDEs más populares, pero si utilizas Netbeans o Eclipse vas a tener GUI’s para ambos sistemas.
- Navegando a través de las versiones es más simple en Subversion, ya que utiliza números de secuencia de revisión (1,2,3, ..); Git utiliza impredecibles códigos hash SHA-1.
- Navegando hacia atrás en Git es muy fácil usando la sitaxis «^», pero no hay manera fácil de navegar hacia adelante.
- Dado que Subversion tiene un repositorio central único, es posible especificar leer y escribir los controles de acceso en un solo lugar y hacer que se respete efectivamente en la totalidad del proyecto.
- Con Subversion se puede extraer un subdirectorio de un repositorio. Esto no es posible con Git. Por lo que para un proyecto grande, esto significa tener siempre que descargar el repositorio completo.
- SVN tiene la ventaja de que es mucho más fácil de aprender mientras que Git es más difícil de aprender porque tiene más conceptos y órdenes.
Repositorio para SVN: Assembla: https://www.assembla.com
Repositorio para Git: GitHub: https://github.com/