Hola tata, sobre el control de versiones lo más habitual es usar este término para referirse a mantener un sistema de copias controladas con las diferentes versiones de un software, programa o página web a lo largo del tiempo. Esto es útil sobre todo cuando se trata de proyectos en grandes empresas donde trabajan decenas de programadores haciendo modificaciones simultáneamente y desarrollando mucho código.
Te pongo un ejemplo: supón que se va a desarrollar un proyecto web para una empresa que vende viajes. Un equipo de desarrollo de software podría plantear el núcleo del sistema web considerando que las ventas van a ser a clientes particulares (consumidores) y que los productos pueden ser billetes de avión, billetes de barco o billetes de tren. Una primera versión o versión 0.1 podría ser la web funcionando solo para billetes de avión, una segunda versión o versión 0.2 podría ser la web funcionando para billetes de avión y billetes de barco. Una tercera versión podría ser la versión 0.3. Entre medias podríamos tener muchas versiones distintas, por ejemplo la versión 0.24 podría ser una versión donde ya estaba en funcionamiento el sistema para billetes de avión pero no completamente para billetes de barco.
Ahora supón que cuando se llegó a la versión 0.24 el equipo de desarrollo se dio cuenta de que había cometido un error en el planteamiento de cómo incorporar los billetes de barco y que ese error afectaba a todo el código que se escribió después de la versión 0.2. ¿Qué hacer? Se sabe que la versión 0.2 era correcta, pero los cambios posteriores no se sabe el tiempo que puede llevar repararlos. Quizás lo más rápido y económico sea volver a la versión 0.2 que es segura, olvidarse de lo hecho a posteriori y volver a empezar desde ese punto.
Esto sería un ejemplo de la utilidad del control de versiones, tiene más utilidades, por ejemplo normalmente queda registrado quién hace las modificaciones en el código. Si el jefe de proyecto detecta que hay una parte mal programada, puede dirigirse a la persona que creó esa parte porque el sistema de control de versiones registró esa información.
En proyectos pequeños, como los que puede hacer una persona sola o un equipo muy pequeño, no suele usarse control de versiones porque en ese caso no aporta verdaderas ventajas. En ese caso suele usarse el mantener copias de seguridad a medida que se va avanzando en el tiempo y poco más. Saludos.