¿Qué es el Control de Versiones?
El control de versiones es una herramienta que nos ayuda a crear un historial de archivos.
Trabajando sin control de versiones
Cuando trabajamos en proyectos donde cambiamos el contenido constantemente usualmente tenemos dos alternativas:
- Sobre-escribir archivos, lo cual vuelve irrecuperable versiones anteriores
- Duplicar el archivo y cambiar el nombre de alguno (el clásico
archivo-final2-definitivo.html
)
Lo cual puede desencadenar en más problemas. Especialmente en programación.
Como hacemos cambios constantemente esta herramienta nos ayuda a guardar dichos cambios. Así podemos preservar el nombre original de los archivos y las diferentes versiones.
También podemos volver a estados anteriores de nuestro código por si algo sale mal.
E incluso nos ayuda a trabajar en equipo y de manera remota, manteniendo los cambios que hacen las diferentes personas y dándonos una forma de resolver conflictos por si dos o más personas editan un mismo archivo.
Analogía
Imagina que tienes una caja donde guardas dibujos.
Cada vez que terminas un dibujo, lo pones en la caja. Si luego haces un cambio en ese dibujo, en vez de borrar lo que ya hiciste, haces una copia nueva con los cambios y también la pones en la caja.
Así, tienes todas las versiones de tu dibujo.
En el control de versiones de computadoras, hacemos algo similar con los archivos donde escribimos código para programas.
Cuando empezamos un proyecto, creamos una “caja” especial (en realidad, una carpeta en la computadora) donde guardamos todos los archivos del proyecto.