Commit atómico

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

Un commit atómico es un concepto soportado por los modernos sistemas de control de versiones que permiten realizar commit cargando a la fuente cambios en varios ficheros (llamado un 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, el "commit" es abortado y todos los cambios que han tenido lugar son revertidos (rolled back). 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 les hace commit juntos se tratan con una modificación individual, y todo lo cambiado en esa modificación debe ser incluido en el commit. La palabra átomo significa originalmente la partícula más pequeña posible de materia, indivisible.

De esta manera, el tronco del código permanece estable; las personas que actualizan su copia no pierden cambios dejados para ser committed en la copia de alguien más; el changeset no es demasiado sucio para poder leer en el; y si el commit atómico es revertido, la modificación individual es eliminada enteramente de todas las partes de la base del código.

Véase también[editar]