13. Cambiar nombre de la rama Master a Main
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Cambiar el nombre de la rama Master a Main
Bienvenidos a esta nueva exposición. Hoy vamos a abordar un tema muy importante en la evolución de Git: el cambio de nombre de la rama principal de master a main. Veremos por qué es relevante, qué son las ramas y cómo realizar este cambio tanto en nuestro repositorio actual como de manera global para futuros proyectos.
1. ¿Dónde estamos? El comando git branch
Para empezar, abran su terminal integrada (ya sea en Visual Studio Code o la que prefieran) y ejecuten el siguiente comando:
git branch
git branch es un comando que les va a decir en qué rama están trabajando actualmente. Es parecido a git status, pero status les da mucha más información (archivos modificados, etc.). git branch se enfoca específicamente en las ramas.
Al ejecutarlo, verán algo como esto (probablemente con un asterisco y de otro color):
* masterEso indica que están en la rama master.
2. ¿Qué es una Rama?
Ahora, hablemos de esa terminología que puede sonar un poco extraña: ¿Qué es una rama?
En pocas palabras, una rama es el lugar en el cual ustedes se encuentran trabajando. Un proyecto puede tener múltiples ramas. Para entenderlo, usemos la analogía de un árbol.
Ustedes han visto que un árbol tiene diferentes ramas. Imagínense que son una hormiga y empiezan a escalar ese árbol. Pueden decir: "Ok, acá hay una rama, me puedo ir por esta rama y sigo caminando por ella. Y esta rama puede tener otra rama más pequeña, y por ahí va la cuestión".
En Git es la misma analogía. Eventualmente, las ramas pueden volver a unirse a la rama principal. Una rama también podría verse como una versión alterna de la realidad o un multiverso en el que ustedes trabajan.
¿Y por qué es tan útil esto? Porque imaginen que ustedes se van por una rama, empiezan a trabajar en una nueva funcionalidad, y se dan cuenta de que no sirve para nada y hay que echar todo a la basura. Con Git, ustedes simplemente eliminan la rama y ¡listo! No pasa absolutamente nada con su proyecto principal. Es súper, súper útil.
3. La Nueva Convención: De master a main
Ustedes, al hacer git branch, pueden notar que ya no dice master, sino que dice main. ¿Por qué esta tendencia?
La rama master (o main) es la rama principal del proyecto. Yo les aconsejaría que hagan la menor cantidad de modificaciones directamente en esta rama. ¿Por qué? Porque si ustedes están trabajando con otras personas (o incluso ustedes mismos), es una buena práctica que la rama principal contenga únicamente lo que va a producción, o la versión final y estable de su proyecto. Los cambios experimentales siempre deben hacerse en otras ramas.
Hoy en día, por movimientos de inclusividad en la industria, se ha adoptado masivamente el cambio de nombrar la rama principal como main en lugar de master. Es algo muy, muy utilizado actualmente. Por eso, en esta lección vamos a hacer dos cosas:
Cambiar el nombre de nuestra rama actual de
masteramain.Configurar Git para que, cuando creemos un nuevo repositorio, la rama principal se llame
mainpor defecto.
4. Cambiando el Nombre de la Rama Actual
Para cambiar el nombre de la rama en la que estamos, usaremos el siguiente comando:
git branch -m master main
Analicemos este comando:
git branch: Hace referencia a que queremos trabajar con ramas.-m: Es la bandera (flag) para "move" o renombrar (rename).master: Es el nombre actual de nuestra rama.main: Es el nuevo nombre que le queremos dar.
Ejecuten el comando. Observarán que Git no les da ningún error, ni les tira ningún mensaje. Si no hay errores, significa que lo hizo correctamente.
Ahora, para verificarlo, escriban nuevamente:
git branchPresionan enter y... ¡tachán! Ahora dice main.
* mainSi ustedes prueban su proyecto (por ejemplo, regenerando archivos con git checkout o git restore), todo sigue funcionando exactamente igual que antes. El historial y los archivos son los mismos, solo le cambiamos el nombre a la rama.
5. Configuración Global: main para Nuevos Repositorios
El cambio que acabamos de hacer es solo para el repositorio actual. El inconveniente es que si ustedes inicializan un nuevo repositorio con git init en otra carpeta, la rama principal volverá a llamarse master. Esto no es una configuración global.
Para cambiar eso y que todos los repositorios nuevos usen main, ejecutamos el siguiente comando de configuración global:
git config --global init.defaultBranch main
Vamos a desglosarlo:
git config: Comando para configurar Git.--global: Indica que queremos que esta configuración sea global (para todos los repositorios de nuestro usuario).init.defaultBranch main: Le estamos diciendo a Git que, cuando se ejecutegit init, la rama por defecto se llamemain.
Presionan enter. Para asegurarnos de que la configuración se guardó correctamente, podemos revisar el archivo de configuración global con:
git config --global --editO si solo quieren consultar ese valor específico:
git config --global init.defaultBranchEste comando debería devolver main (o el nombre que hayan puesto).
6. Probando la Configuración Global
Ahora, para probar que nuestra configuración global funciona, vamos a hacer una pequeña demostración (¡con cuidado!).
Imaginemos que entramos a la carpeta de nuestro proyecto 01-bases y, por accidente, borramos la carpeta .git. Eso, en pocas palabras, destruye todo el repositorio. Ya no hay ningún rastro de Git en nuestro proyecto. Si hacemos git status, nos dirá que no es un repositorio de Git.
Nota: Esto es solo para fines demostrativos. Normalmente no borrarían su repositorio.
Ahora, vamos a inicializar el repositorio de nuevo:
git initAl hacer esto, noten el mensaje: Inicializa un repositorio Git vacío. Pero ahora, gracias a nuestra configuración global, la rama por defecto ya no será master.
Hagamos nuestro primer commit para que la rama aparezca:
git add .
git commit -m "Primer commit"Y finalmente, verifiquemos con:
git branch
git status¡Ahora nos dice que estamos trabajando en la rama main! Qué interesante, ¿verdad?
Si quieren revisar que la configuración está en su archivo global, pueden verlo con git config --global --edit. Deberían de tener una línea que diga init.defaultBranch = main.
Para salir del editor (si usaron --edit), pueden escribir :wq y presionar enter, o si usaron el visor, escriban :q! para salir inmediatamente.
Resumen
En este video aprendimos:
git branch: Para saber en qué rama estamos.El concepto de rama: Como versiones alternas de nuestro proyecto, súper útiles para experimentar sin miedo.
git branch -m master main: Para renombrar la rama actual demasteramain.git config --global init.defaultBranch main: Para establecer que, de ahora en adelante, todos los repositorios nuevos que inicialicemos tengan como rama principalmain.
Cuestionario de Repaso
Respondamos las siguientes preguntas para asegurar que los conceptos han quedado claros:
¿Cuál es la función principal del comando
git branch?
a) Mostrar el historial de commits de la rama actual.
b) Crear una nueva rama y cambiarse a ella automáticamente.
c) Mostrar la lista de ramas del repositorio e indicar en cuál estamos trabajando.Según la analogía presentada, ¿cuál es la mejor forma de describir una rama en Git?
a) Es una copia de seguridad de todo el proyecto.
b) Es una versión alterna o un "multiverso" del proyecto donde podemos experimentar sin afectar la rama principal.
c) Es el archivo más importante del repositorio.¿Qué comando se utiliza para renombrar la rama actual de
masteramain?
a)git branch main master
b)git rename master main
c)git branch -m master mainSi queremos que todos los repositorios que creemos en el futuro tengan su rama principal llamada
main(en lugar demaster), ¿qué comando debemos ejecutar?
a)git config --global init.mainBranch main
b)git config --global init.defaultBranch main
c)git config --global branch.default main¿Por qué se recomienda no trabajar directamente sobre la rama principal (
mainomaster)?
a) Porque es más lenta que las otras ramas.
b) Porque es una buena práctica mantenerla solo para la versión final, estable y probada del proyecto.
c) Porque no se pueden hacer commits en la rama principal.
Respuestas:
c) Mostrar la lista de ramas del repositorio e indicar en cuál estamos trabajando.
b) Es una versión alterna o un "multiverso" del proyecto donde podemos experimentar sin afectar la rama principal.
c)
git branch -m master mainb)
git config --global init.defaultBranch mainb) Porque es una buena práctica mantenerla solo para la versión final, estable y probada del proyecto.
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Comentarios
Publicar un comentario