fbpx

¿Para que sirven las ramas o branch en git y como crearlas?

Las ramas sirven de mucho en un ambiente colaborativo de desarrollo… te lo voy a explicar con un ejemplo.

Supongamos que tenemos el proyecto llamado app-angular en GitHub en el cual están interviniendo 3 desarrolladores y se requieren hacer o ejecutar las siguientes tareas en el proyecto: Ticket-A, Ticket-B y TicketC

Crear branch y cambiar de branch

Existen 2 maneras de crear la rama: Localmente y remotamente

Para crearla localmente tomaremos a Visual Studio Code con el proyecto app-angular como ejemplo

git branch           /*Para revisar las ramas que tenemos actualmente en el proyecto y en cual nos encontramos*/
git branch Ticket-A  /*Para crear la rama llamada "Ticket-A"*/
git checkout Ticket-A /*Para cambiarnos de rama*/

Revisa la siguiente imagen

creacion de branch localmente
Branch Ticket-A creada por uno de los desarrolladores localmente

Como el branch Ticket-A fue creada localmente aun no se encuentra en el repositorio remoto si no hasta que hagamos los cambios pedidos en el Ticket-A y ejecutemos el git push de nuestro cambio en el repositorio remoto

Si creamos el branch remotamente o sea en Github no será necesario crearlo localmente para evitarnos problemas, la creación de los branchs se debe de coordinar junto con el administrador del proyecto.

creacion de branch remotamente
Creación de branch remotamente

Normalmente en un proyecto colaborativo grande nunca trabajamos en el branch main ya que esta rama es la operativa o la productiva.

Lo que tu hagas en tu branch Ticket-A localmente solo estará ahí precisamente, el branch main quedara como ante de que fuera creada el branch Ticket-A

Tomemos en cuenta la siguiente imagen

commit cambios de branch ticket A

En la imagen se creo el component en Angular llamado bancos, en el branch Ticket-A y viendo el estatus de git con git status nos mostrara loa cambios realizados, si no conoces las instrucciones básicas para utilizar git te recomiendo leer este articulo Como controlar nuestro código fuente con Git y GitHub desde Visual Studio Code

git commit & git push

Ejecutamos un git commit -m “se crea el catalogo de bancos” y un git push git push –set-upstream origin Ticket-A para crear la rama en el repositorio remoto en Github como lo vemos enseguida

cambios de branch ticket A en repositorio remoto

Compare, pull request y merge en repositorio remoto de branch main con branch Ticket-A

Una vez echo el git push normalmente el administrador del proyecto revisara los cambios y hará el merge de ambas branchs, tanto la main como la del Ticket-A.

compare & pull request
Compare & pull request del Ticket-A
able to merge
El branch Ticket-A esta habilitado para mezclarse con el branch main
merge pull request
Se ejecuta el Merge pull request
confirm merge
Confirmación de merge en repositorio remoto de ambos branchs
delete branch
Una vez que el merge es ejecutado de manera satisfactoria tenemos la posibilidad de borrar el branch Ticket-A esto ya dependerá del administrador del proyecto, eso no quiere decir que no habrá una bitácora con los cambios que se hicieron y quien los hizo claro esta.

Conclusiones

Pudimos ver como crear el branch de acuerdo a las necesidades del proyecto de software, además de ver como se hace el merge en el repositorio remoto del branch Ticket-A con el branch main normalmente en los ambientes colaborativos el merge de los branchs de desarrollo no los hace todo el mundo, normalmente depende de una persona que es la que se va a asegurar de probar que el cambio no genere problemas cuando se vaya a liberar la versión al ambiente productivo, claro que sin dejar de lado las pruebas necesarias antes de que eso ocurra.

Es un poco complicado aprender de esta manera pero al menos espero tengas una idea del flujo de un proyecto y de para que sirven los branchs en los ambientes colaborativos.

¿Te quedaste con alguna duda? coméntanoslo.

¿Necesitas ayuda con tu desarrollo de software o con el marketing de tu negocio? contáctanos

Halcón de cola roja como imagen del autor.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

* *
*

Scroll al inicio