Acciones

Guía esencial de Git y GitHub

De >Core Dumped_ WIKI

Revisión del 16:36 18 oct 2018 de Coredumped (discusión | contribuciones) (¿Qué son las branch?)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)

Branches

¿Qué son las branches?

Las branches son ramas de desarrollo que crecen en paralelo a la rama principal. Parten de un estado de una rama concreta y todo el trabajo realizado en esa rama no interferirá en otras ramas hasta que se realice un "merge".

En estas ramas el funcionamiento del repositorio no cambia, a excepción de que se está trabajando de forma paralela a la rama principal.

Ejemplos de casos de uso para realizar una branch

  • Corrección de bugs
  • Cambios estéticos de la vista
  • Sustitución de librerías o actualización de las mismas cuando afecta a las llamadas
  • Refactorización del código

Una duda que puede surgir es: ¿y si al hacer la rama la versión principal cambia y quedo desactualizado?

Pues bien, ¡no hay problema! Puedes actualizar tu rama sin problemas, realizando un `git fetch` para comprobar los cambios en el repositorio y un `git pull origin tuRama` para descargar los cambios. El control de versiones automatizará la descarga, tratando de combinar tus cambios con los descargados. En caso de no ser posible hacer esto de forma automática, te solicitará ayuda. No te preocupes, en la mayoría de los casos suele ser un conficto trivial.

¿Cómo creo una branch?

Es muy sencillo: supongamos que queremos hacer una _branch_ a partir de la rama "master".

En primer lugar nos aseguramos de estar en la rama correcta (master). Esto podemos lograrlo con el comando `git branch -vv -a` indicará con un asterisco la rama en la que estamos situados. Si necesitamos cambiar de rama emplearemos el comando `git checkout nombreRamaDestino`. En este caso será la rama "master". Una vez situados en nuestra rama "master" empleamos el comando `git branch nombreNuevaBranch`. Si ya existe una rama con ese nombre no permitirá la creación de dicha rama.

Para situarnos en la nueva rama utilizaremos el comando `git checkout nombreBranch`.

¿Cómo vamos a trabajar?

Una vez clonado el repositorio vamos a generar una rama nueva con nuestro nombre usando los pasos anteriores. A partir de esta rama podemos generar tantas ramas como necesitemos.

En el repositorio remoto vamos a crear una nueva _branch_ con nuestro nombre como nombre de la _branch_ enviando nuestra rama personal mediante el comando `git push origin nombreRamaPropia`. Esto reflejará la rama que hemos creado en el repositorio remoto.

Comandos utilizados

  • `git fetch`
  • `git pull repositorioRemoto nombreRamaLocal`
  • `git branch -vv -a`
  • `git checkout nombreRamaLocalDestino`
  • `git branch nombreNuevaBranch`
  • `git push repositorioRemoto nombreRamaLocal`