Crear una rama en git



En este tutorial aprenderemos las nociones básicas de las ramas de git. Lo primero tenemos que iniciar un repositorio de git

git init

Ahora estamos en este punto donde solo tenemos un nodo y la rama master.



Despues de hacer esto crearemos un fichero en la rama master.

touch fichero.txt

Ahora guardaremos los cambios.

git add fichero.txt

git commit -m "Añadido fichero.txt"

Ahora al hacer el commit la rama master esta apuntando a otro nodo.



Antes de hacer un cambio de rama tenemos que hacer un git add y commit para que los cambios se queden guardados en la rama, y por fin llego la hora de hacer la rama que vamos a llamar tuto1.

git branch tuto1

Ya tenemos la rama creada pero todavía estamos en la rama master, para cambiar a la rama nueva vamos a realizar el siguiente comando.

git checkout tuto1

Ahora en el mismo nodo, hemos creado la rama tuto1.



Para agilizar este proceso podemos realizar el siguiente comando para crear un rama i cambiar a ella con el mismo comando. Ahora mismo no tenemos que utilizar este comando ya que ya lo hemos realizado antes.

git checkout -b tuto1

Si nos hemos equivocado con el nombre para borrar una rama el comando es el siguiente pero en nuestro caso si lo has escrito bien vamos a borrar nada. Si estamos posicionados en la rama tuto1 tendremos que cambiar a la rama master para poder borrarla.

git branch -d tuto1

A continuación vamos a añadir información al fichero.txt

echo "hola" >> fichero.txt

Si hacemos un cat del fichero.txt podremos ver hola y si hacemos un git status podremos ver que en modificado esta el fichero.txt
Ahora vamos a realizar un git add y un git commit

git commit -a -m "Añadido hola al fichero.txt"

Al hacer el commit la rama tuto1 se ha movido un nodo.




Con el -a en lo que hacemos es hacer el add a la hora que hacemos el commit
Vamos a cambiar a la rama master

git checkout master

Hacemos un cat del fichero.txt y como podemos ver no saldrá nada en la consola porque los cambios que realizamos en el fichero.txt están guardados en la rama test1. Para poder fusionar los cambios de la rama master con la de test1 lo que tenemos que hacer es posicionarnos en la rama que queremos añadir los cambios, como ya estamos en la rama master ya no hace falta cambiar de rama. Para poder fusionar las dos ramas necesitamos hacer un merge.

git merge tuto1

Si hacemos un cat fichero.txt podremos ver el hola que añadimos en la rama tuto1, en esta ocasion al hacer el merge no hemos tenido un problema pero si modificamos la misma linea en ramas diferentes nos saldrá un conflicto.

Al hacer el merge al final la estructura se nos quedaría tal que así.