Es tremendamente importante para tener un buen flujo de trabajo con git, controlar todo el manejo de ramas, tanto en local como en remoto.
Podemos listar las ramas que tengamos en nuestro repositorio local de la siguiente forma:
$ git branch
$ git branch -av
El primero nos haría un listado simple de ramas
$ git branch
* dev
feature-add-retina-images
El segundo nos haría un listado de cada rama con el último commit.
$ git branch -av
* dev bb668a4 [ahead 268] Merge pull request #94
feature-add-retina-images 2722072 Merge branch 'dev' of master
Em ambos casos el símbolo *
nos indica en qué rama estamos actualmente.
Podemos crear una rama con el siguiente ejemplo:
$ git checkout -b nombreDeLaNuevaRama
El parámetro b implica que si no tenemos creada la rama nos la creará antes de cambiarse a ella.
Podemos borrar una rama local de git con el siguiente comando:
$ git branch -D nombreDeLaRama
Podemos renombrar una rama local de git con el siguiente comando:
$ git branch -m nombreDeLaRamaAntigua nombreDeLaRamaNueva
Podemos cambiar a una rama con el siguiente ejemplo:
$ git checkout nombreDeLaNuevaRama
$ git checkout --track repositorioRemotoEnlazado/ramaATrackear
$ git push repositorioRemotoEnlazado --delete nombreDeLaRama