Clinicflow

GIT

¿En qué consiste?

Git consiste en un conjunto de herramientas y comandos que permiten a los desarrolladores llevar un registro histórico completo y detallado de cada modificación que se aplica a los archivos de un proyecto.

La clave de Git es que es un sistema distribuido:

  • Repositorio Local: Cada desarrollador que trabaja en el proyecto tiene una copia local completa del historial del proyecto (el repositorio), lo que le permite trabajar sin conexión y realizar la mayoría de las operaciones (como guardar cambios) de forma inmediata.

  • Repositorio Remoto: Existe un repositorio central (alojado en plataformas como GitHub, GitLab o Bitbucket) que actúa como punto de coordinación para compartir los cambios entre los miembros del equipo.

 

Conceptos clave del flujo de trabajo

El funcionamiento de Git se basa en los siguientes conceptos:

  1. Commit (Confirmación): Es la acción de guardar una «instantánea» o versión específica de los archivos del proyecto en el historial de Git. Cada commit tiene un identificador único y un mensaje que explica los cambios realizados.

  2. Branch (Rama): Son punteros que permiten a los desarrolladores crear líneas de desarrollo separadas de la versión principal del código (generalmente llamada main o master). Esto permite trabajar en nuevas funcionalidades o corrección de errores sin afectar el código estable.

  3. Merge (Fusión): Es el proceso de integrar los cambios de una rama de vuelta a la rama principal una vez que el trabajo está terminado y probado.

  4. Push/Pull:

    • Push: Enviar los commits locales al repositorio remoto (en internet) para que el resto del equipo pueda verlos.

    • Pull: Traer los últimos cambios realizados por otros miembros del equipo desde el repositorio remoto a tu repositorio local.

¿Para qué sirve?

El propósito principal de Git es permitir la colaboración eficiente y el desarrollo seguro en proyectos de cualquier tamaño.

 

1. Control de versiones y recuperación

Git permite volver a cualquier versión anterior del proyecto en cuestión de segundos. Si se introduce un error grave en el código, es posible revertir rápidamente el cambio o ver exactamente qué, quién y cuándo lo modificó.

 

2. Trabajo en equipo distribuido

Permite que múltiples desarrolladores trabajen en el mismo proyecto y en el mismo archivo de forma simultánea sin interferir entre sí. Las ramas aíslan el trabajo hasta que esté listo, y Git ayuda a gestionar las fusiones (integraciones) de manera inteligente.

 

3. Desarrollo no lineal (experimentación)

Gracias al sistema de ramas, los desarrolladores pueden experimentar y probar ideas radicales en una rama separada sin poner en riesgo la estabilidad de la versión principal del proyecto que está en producción.

 

4. Trazabilidad

Proporciona un historial auditable y transparente. Sabes quién hizo un cambio, cuál era su propósito (gracias al mensaje del commit) y qué archivos afectó, lo cual es fundamental para el mantenimiento a largo plazo del software.

Logo de Git