Appendix B Comparación con otros sistemas de control de versiones

Subversion (SVN)

Centralizado: un único servidor guarda todo el historial; los clientes solo tienen la revisión actual. Las ramas son directorios dentro del mismo árbol, más costosas de crear y fusionar que en Git.

Mercurial

También distribuido, con un modelo de datos conceptualmente similar al de Git (historial como grafo de cambios). Difiere sobre todo en la interfaz de comandos y en que, tradicionalmente, no permite reescribir historia publicada con la misma facilidad que Git.

CVS

Predecesor centralizado de Subversion, ya en desuso en la mayoría de proyectos activos. No maneja bien el renombrado de archivos ni los commits atómicos que abarcan varios archivos.

Perforce

Centralizado, orientado a archivos binarios grandes y usado extensamente en la industria de videojuegos, donde el modelo distribuido de Git resulta menos práctico por el tamaño de los assets.

La principal ventaja práctica de un sistema distribuido como Git no es solo trabajar sin conexión: es que cualquier copia del repositorio es una réplica completa, lo que elimina el servidor central como punto único de fallo y permite flujos de colaboración que no dependen de una autoridad centralizada, como el modelo de parches por correo (see Revisión de cambios).