Commit atómico
# Commit atómico

Un commit atómico o consolidado atómico es un concepto implementado en los modernos sistemas de control de versiones que permite realizar la consolidación o commit cargando a la fuente cambios en varios ficheros (llamado un conjunto de cambios o changeset) mientras garantizan que todos los ficheros se cargan completamente y se combinan.

Si hay un fallo antes de que un cliente del sistema de control de revisión pueda completar la transacción, tal como una desconexión de línea de Internet o un conflicto que no puede ser resuelto automáticamente por el sistema de control de revisión, la consolidación es abortada y todos los cambios que han tenido lugar son revertidos. Esta funcionalidad es similar a la característica rollback de las modernas bases de datos relacionales.

En un commit atómico, normalmente los ficheros a los que se van a consolidar juntos se tratan como una modificación individual, y todo lo cambiado en esa modificación debe ser incluido en la instrucción commit. La palabra átomo significa originalmente la partícula más pequeña posible de materia, indivisible.

De esta manera, el grueso del código permanece estable. Las personas que actualizan su copia no pierden cambios dejados para ser consolidados en la versión de algún otro usuario del sistema de control de versiones. Tampoco se dejan versiones que hayan sido manipuladas entremedias como para afectar al repositorio central. Si el consolidado atómico es revertido, la modificación individual es eliminada enteramente de todas las partes del repositorio.

