Cómo renombrar y cambiar una rama o branch por defecto en GitHub
Introducción
Sin entrar a valorar motivos ni opiniones, y hablando de hechos, cuando creábamos un repo en GitHub, éste creaba una rama o branch por defecto denominada master.
De una parte a este tiempo, en este convulso 2020, se ha decidido cambiar el nombre de la rama por defecto de master a main.
Así que desde hace unos meses, cuando creas un proyecto en GitHub, la rama que se crea por defecto se llama main.
Si acudimos a la configuración de GitHub, podemos comprobar que la default branch o rama por defecto que ahora se llama main.
Si tú eres como yo, de esos desarrolladores que tienes algunas decenas de proyectos y repos en GitHub, te puedes encontrar con proyectos cuya rama según la antigüedad de los repositorios, son por defecto master y main, como es mi caso.
La norma no escrita es la de tener siempre limpia y ordenada tu casa para que los invitados la encuentren confortable, y eso es lo que haremos en esta entrada.
Así que lo que voy a hacer es explicarte cómo a través de línea de comandos de Git, y a través de GitHub, renombrar y cambiar una rama por defecto en GitHub.
Pasos a seguir
Partiremos de la base de que tenemos un proyecto en GitHub, y que este proyecto tiene una rama por defecto de nombre master.
Mi repo es: https://github.com/J0rgeSerran0/MySampleRepo
Así que en primer lugar, trabajaremos con la línea de comandos sobre este repo que tiene la rama master por defecto.
Abriremos por lo tanto, una ventana de comandos y ejecutaremos la siguientes líneas de comandos:
Clonaremos en nuestro disco duro el repo con su rama master por defecto.
git clone https://github.com/J0rgeSerran0/MySampleRepo.git
Se habrá creado una carpeta con el nombre de nuestro proyecto (MySampleRepo) con el contenido del proyecto dentro.
Nos situaremos dentro de la carpeta, y escribiremos nuevamente el siguiente comando para mover la rama master a la rama main:
git branch -m master main
Y por último, ejecutaremos el siguiente comando para hacer un upstream o aplicar los cambios hacia arriba:
git push -u origin main
La ejecución de estos comandos, la puedes ver en la siguiente imagen:
Ahora iremos a GitHub y comprobaremos nuestro proyecto y sus ramas.
Aquí observaremos que ahora tenemos dos ramas que son master y main.
La rama original master sigue existiendo en nuestro proyecto, y sigue siendo la rama por defecto.
El motivo es que hemos creado una rama main idéntica a master, pero como digo, seguimos teniendo dos ramas y seguimos teniendo a master por defecto.
Haremos clic en la opción View all branches.
Al hacer clic sobre la opción anterior, se abrirá una ventana con las ramas que tenemos.
Observamos que la default branch es master como estaba comentando anteriormente, por lo que haremos clic sobre el botón Change default branch.
Se abrirá la configuración de ramas de nuestro proyecto, y veremos que tenemos una rama por defecto master y dos ramas en total.
Seleccionaremos la rama main, y luego pulsaremos sobre el botón Update para actualizar la rama como rama por defecto.
Aparecerá un mensaje en pantalla que nos pide confirmación, por lo que pulsaremos sobre el botón de confirmación I undestand, update the default branch.
Aparecerá un mensaje en la parte superior indicándonos que se han realizado los cambios correctamente, y que la rama por defecto, es ahora main.
Sin embargo, dentro de nuestro repo, seguimos teniendo 2 ramas, master y main.
La realidad aquí, es que no nos interesa tener dos ramas iguales, así que vamos a eliminar la original master y dejar la nueva main como única rama válida.
Para ello, haremos nuevamente clic sobre la opción View all branches.
En la pantalla que aparece, haremos clic sobre la papelera en la rama master, que es la que vamos a eliminar.
Una vez realizada esta acción, si volvemos a nuestro repo, veremos que ahora sólo tenemos una rama, y que esa rama es main.
De esta manera, habremos renombrado y cambiado master como main.
Happy Coding!