Una rama es una línea independiente de desarrollo en un repositorio Git. Cada rama apunta a un commit específico y te permite trabajar en cambios sin afectar otras ramas. La rama principal (main o master) contiene el código estable, mientras que las ramas secundarias contienen trabajo en progreso.
Cómo funciona
Cuando creas una rama, Git crea un puntero al commit actual. A partir de ese punto, los commits realizados en la nueva rama no aparecen en la rama original. Esto permite desarrollar funcionalidades, corregir errores o experimentar sin riesgo de romper el código principal.
Cuando el trabajo está listo, haces merge de la rama de vuelta a la principal. Git combina los cambios, resolviendo conflictos cuando las mismas líneas fueron modificadas en ambas ramas. Las ramas pueden ser locales o remotas, y es común usar una rama por funcionalidad o por tarea.
Ejemplo práctico
Un desarrollador crea la rama feature/login para implementar autenticación. Mientras trabaja en esa rama, otro desarrollador corrige un error en la rama fix/typo. Los dos trabajos no interfieren. Cuando ambos terminan, hacen merge a main y el código final contiene los dos cambios.
En el contexto de agentes de código, cada agente puede trabajar en su propia rama, evitando conflictos. Cuando un agente termina, su trabajo es revisado y mergeado, manteniendo el historial organizado.
Para qué sirve
Las ramas son la base del desarrollo colaborativo y del flujo de trabajo con agentes de IA. En bridgecode, cada agente de un squad puede operar en una rama aislada, permitiendo revisión y merge controlado de cada contribución.