Git
Tutorial Git: Ramas
Git ramas: creación y manejo. Domina la creación y manejo de ramas en Git con ejemplos prácticos y detallados.
Aprende Git GRATIS y certifícateGitHub Desktop es una interfaz gráfica de usuario que permite a los usuarios interactuar con Git y GitHub de una manera más visual y amigable.
Una de las características esenciales de Git, y por ende de GitHub Desktop, es el concepto de ramas (branches en inglés).
¿Qué es una rama?
Una rama en Git es una línea independiente de desarrollo.
Se puede visualizar como una manera de tener múltiples "copias" del código, donde se pueden realizar cambios sin afectar el código principal o la versión estable del proyecto.
¿Por qué son útiles las ramas?
Las ramas son esenciales porque permiten trabajar en características, correcciones de errores o experimentos sin interferir con el código en producción.
Una vez que los cambios en una rama están completos y probados, pueden ser fusionados de nuevo en la rama principal.
Ejemplo de uso de ramas
Supongamos que se tiene un proyecto con un archivo llamado saludo.txt
.
Contenido de saludo.txt
:
Hola, mundo.
Se quiere añadir un nuevo saludo en otro idioma, pero sin afectar la versión actual hasta estar seguro de que el cambio es correcto. Para esto, se crea una nueva rama llamada agregar-saludo
.
Creación de una rama
Para crear una nueva rama en GitHub Desktop:
- Abrir GitHub Desktop y seleccionar el repositorio en el que se quiere trabajar.
- En la parte superior, hacer clic en el menú desplegable "Current branch" (Rama actual).
- Hacer clic en "New branch" (Nueva rama) y asignar un nombre, por ejemplo:
agregar-saludo
. - Hacer clic en "Create branch" (Crear rama).
Ahora se encuentra en la rama agregar-saludo
, y los cambios que se hagan aquí no afectarán la rama principal (por defecto llamada main
o master
).
Realizando cambios
Dentro de la rama agregar-saludo
, se modifica el archivo saludo.txt
para añadir un nuevo saludo:
Hola, mundo.
Hello, world.
Una vez realizado el cambio, se guarda y se procede a realizar un "commit" en GitHub Desktop, escribiendo un mensaje descriptivo, por ejemplo: "Añadido saludo en inglés".
Fusionando la rama
Después de revisar y probar los cambios, se decide que es el momento de integrarlos en la rama principal.
- En GitHub Desktop, seleccione la rama principal (
main
omaster
). - Haga clic en el botón "Merge into Current Branch" (Fusionar en la rama actual).
- Elija la rama
agregar-saludo
y confirme la fusión.
De esta manera, los cambios de la rama agregar-saludo
se incorporan en la rama principal.
Buenas prácticas con ramas
Aunque trabajar con ramas es relativamente sencillo, hay algunas prácticas recomendadas para mantener un flujo de trabajo coherente y evitar conflictos:
1. Nombramiento claro
Es crucial que las ramas se nombren de manera descriptiva para indicar su propósito. Por ejemplo:
corregir-error-login
funcionalidad-pago-en-linea
Estos nombres indican claramente el propósito de la rama, facilitando la organización y la colaboración entre los miembros del equipo.
2. Mantener las ramas actualizadas
Si la rama principal sufre cambios mientras se trabaja en una rama secundaria, es recomendable actualizar esta rama secundaria con los cambios más recientes.
Esto se puede hacer fusionando la rama principal en la rama secundaria o utilizando rebase.
3. Evitar ramas muy extensas
Es una buena práctica mantener las ramas lo más cortas y específicas posible.
Si una rama se extiende demasiado en el tiempo, es más probable que surjan conflictos al intentar fusionarla con la rama principal.
Es mejor fusionar cambios pequeños y frecuentes que grandes cambios esporádicos.
4. Eliminar ramas obsoletas
Una vez que una rama se ha fusionado y ya no es necesaria, es una buena práctica eliminarla para mantener el repositorio limpio y organizado.
En GitHub Desktop, se puede eliminar fácilmente una rama seleccionándola y haciendo clic en el icono de la papelera o "Delete".
Resolución de conflictos
Es posible que, al intentar fusionar dos ramas, se presenten conflictos si se han realizado cambios en las mismas partes del código en ambas ramas.
GitHub Desktop ofrece herramientas para resolver estos conflictos de manera visual.
Cuando se presenta un conflicto:
- GitHub Desktop mostrará un mensaje indicando que hay conflictos por resolver.
- Se deberá abrir el archivo en conflicto, donde Git habrá insertado marcas especiales para indicar las áreas problemáticas.
- Manualmente, se decide qué versión del código se quiere mantener o se realiza la edición correspondiente para integrar ambas versiones.
- Una vez resueltos los conflictos, se guarda el archivo y se realiza un nuevo commit para finalizar la fusión.
Conclusión
Las ramas en GitHub Desktop y en Git en general son esenciales para mantener un desarrollo organizado y fluido. Permiten experimentar, añadir nuevas funcionalidades o corregir errores sin alterar la versión estable del software. Utilizarlas adecuadamente y seguir buenas prácticas garantiza un flujo de trabajo eficiente y minimiza los riesgos asociados con la introducción de cambios en el código.
Ejercicios de esta lección Ramas
Evalúa tus conocimientos de esta lección Ramas con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Introducción a Git
Comandos avanzados
Comandos básicos
GitHub como remoto
Comandos básicos
Comandos avanzados
Git con GitHub Desktop
Ramas
Instalación y configuración
Resolución de conflictos
Git con Intellij IDEA
Git con Visual Studio Code
Todas las lecciones de Git
Accede a todas las lecciones de Git y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Introducción A Git
Introducción Y Entorno
Instalación Y Configuración
Introducción Y Entorno
Comandos Básicos
Comandos
Comandos Avanzados
Comandos
Ramas
Ramas
Github Como Remoto
Trabajo Remoto Y Colaboración
Git Con Github Desktop
Trabajo Remoto Y Colaboración
Git Con Visual Studio Code
Trabajo Remoto Y Colaboración
Git Con Intellij Idea
Trabajo Remoto Y Colaboración
Resolución De Conflictos
Trabajo Remoto Y Colaboración
Certificados de superación de Git
Supera todos los ejercicios de programación del curso de Git y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.
En esta lección
Objetivos de aprendizaje de esta lección
- Entender el concepto de ramas en Git y GitHub Desktop.
- Aprender a crear y gestionar ramas en GitHub Desktop.
- Conocer buenas prácticas para trabajar con ramas.
- Conocer cómo mantener las ramas actualizadas.
- Aprender a resolver conflictos al fusionar ramas.
- Comprender la relevancia de las ramas en el desarrollo colaborativo.