Ir al contenido principal

Solicitud de extracción en Git: Tu guía sobre cómo funciona

Descubre cómo las solicitudes de extracción agilizan las revisiones de código, impulsan la colaboración y mantienen tu flujo de trabajo de desarrollo limpio y eficiente.
Actualizado 11 jul 2025  · 8 min de lectura

Las solicitudes de extracción han ayudado a mis equipos a evitar errores, a ponerse de acuerdo en las decisiones de implementación y a aprender del código de los demás. En esta guía, te mostraré cómo utilizar las solicitudes de extracción en plataformas basadas en Git para revisar tu código de forma segura.

Si estás empezando con Git, te recomiendo que realicesnuestros cursos Introducción a Git e Introducción a los conceptos de GitHub para aprender sobre el control de versiones y las diferencias entre Git y GitHub. Además, la hojade referencia rápida de Git, que se puede descargar, me parecemuy útil porque incluye todos los términos y comandos más comunes de Git.

¿Qué es una solicitud de extracción?

Una solicitud de extracción es, en realidad, un método para sugerir cambios en el código. Imagina que estás trabajando en una función o en una rama independiente, una solicitud de extracción te permite pedir que esos cambios se fusionen en el código base principal. Esto suele hacerse después de que otras personas hayan tenido la oportunidad de revisarlos. Las solicitudes de extracción son una parte fundamental del desarrollo colaborativo, especialmente cuando se trabaja en equipo.

Cabe destacar que en GitLab, el mismo proceso se denomina «solicitud de fusión». 

¿Cómo funciona una solicitud de extracción?

Los siguientes pasos describen el flujo de trabajo básico de una solicitud de extracción:

  1. Realiza cambios en el script (código) en una rama de características.
  2. Confirma estos cambios en tu repositorio local.
  3. Envía la rama al repositorio remoto, como GitHub.
  4. Abre una solicitud de extracción para sugerir los cambios en la rama principal.
  5. Solicita una revisión de los cambios propuestos.
  6. Fusiona o cierra la solicitud de extracción en función del resultado.

Este flujo de trabajo ofrece a todos los programadores la oportunidad de revisar el código e identificar posibles problemas antes de enviarlo a producción.

Las funciones clave en el proceso de solicitud de extracción incluyen las siguientes:

  • Colaborador: El programador que realiza los cambios y abre la solicitud de extracción.
  • Revisor: Es el programador que revisa los cambios propuestos en el código para sugerir mejoras y garantizar la calidad del código.
  • Responsable del mantenimiento: El gestor de proyectos que es responsable del proyecto y tiene permiso para aprobar o rechazar solicitudes de extracción. 

Te recomiendo que realices nuestro curso Git intermedio para aprender acrear ramas en Git y a colaborar con los miembros del equipo de forma remota.

Crear una solicitud de extracción (con un ejemplo)

Supongamos que detectas un error en la línea introductoria del archivo README de tu proyecto. Quieres solucionar este problema sin afectar a la rama principal. Sigue estos pasos:

Paso 1: Crear una nueva rama

Navega hasta la carpeta de tu proyecto y abre el terminal para ejecutar el siguiente comando. Esta línea crea otra rama.

git checkout -b fix-readme-typo

Paso 2: Haz tu cambio

Para corregir el archivo, abre el archivo README.md en tu editor de código, corrige el error tipográfico y guarda el archivo.

Paso 3: Confirma los cambios.

Etapa y confirma los cambios utilizando el siguiente comando:

git add README.md
git commit -m "Fix typo in README"

Paso 4: Envía la rama a GitHub.

Sube la rama al repositorio.

git push origin fix-readme-typo

Paso 5: Abre GitHub y crea una solicitud de extracción.

Ahora abre tu cuenta de GitHub y haz lo siguiente:

  • Navega hasta tu repositorio en GitHub.

  • Selecciona la opción Comparar y extraer solicitud para la rama que has enviado.

Compara y envía la solicitud de extracción.

  • Añade un título como «Corregir error tipográfico en README» y, si lo deseas, escribe una breve descripción.

  • Elige tu rama base (normalmente main) y compárala con tu rama de características.

Compara la solicitud de extracción con la rama de características.

Paso 6: Solicitar revisión y enviar

Si en tu proyecto participan otros programadores, puedes solicitar revisores o añadir etiquetas si el proyecto las utiliza. A continuación, haz clic en« » (Crear solicitud de extracción).

Creando una solicitud de extracción.

Echa un vistazo a nuestro proyecto sobre cómo realizar una revisión de código para comprender cómo revisar y realizar cambios antes de enviar el código a producción.

Mejores prácticas para solicitudes de extracción

Las siguientes son las mejores prácticas para garantizar un desarrollo de calidad al crear solicitudes de extracción:

  • Mantén tus solicitudes de extracción concisas y sencillas: Comienza siempre con una solicitud de extracción por cada función que desees sugerir. Esto ayuda al revisor a realizar un seguimiento y probar tus modificaciones, y minimiza la posibilidad de introducir errores.
  • Escribe mensajes y descripciones claros para los commits: Proporciona mensajes descriptivos de confirmación para explicar los cambios. Este contexto ayuda a los revisores a comprender tu intención sin tener que examinar el código.  
  • Aprovecha las solicitudes de extracción de borradores para obtener comentarios tempranos: Si tu trabajo no está completo pero deseas recibir comentarios, crea una solicitud de extracción de borrador. Indica que tu código es un trabajo en curso y solicita debate sin obligación de fusionarlo inmediatamente.
  • Prueba a fondo y comparte el contexto: Comprueba siempre dos veces los cambios para asegurarte de que todo funciona como esperas.

Solicitudes de extracción en flujos de trabajo de Git

A continuación, se ofrece una descripción general rápida de cómo se utilizan las solicitudes de extracción en diferentes configuraciones de equipo.

  • Ramificación de funciones: Esto es habitual en equipos pequeños y repositorios privados. Este flujo de trabajo implica crear una nueva rama para cada función. 

  • Flujo de trabajo de bifurcación: Este flujo de trabajo se utiliza en proyectos de código abierto. El flujo de trabajo de bifurcación requiere que los colaboradores bifurquen (copien) el repositorio principal en su cuenta. Realizan cambios en su bifurcación y luego abren una solicitud de extracción al original.

  • GitFlow: Este es un flujo de trabajo estructurado que utiliza ramas a largo plazo como main, develop, release y hotfix. Lo utilizan equipos más grandes con ciclos de lanzamiento más complejos.

Etiqueta para solicitudes de extracción

Es posible que haya cuestiones problemáticas, por lo que las solicitudes de extracción tienen su propio código de conducta:

  • Sé respetuoso y específico: Céntrate en el código, no en la persona.
  • Mantén las solicitudes de extracción centradas: Evita mezclar cambios no relacionados en una sola solicitud de extracción. Ignorar esto solo complica la revisión y los comentarios.
  • Responde con consideración a los comentarios: Reconoce el código bien escrito y las sugerencias de mejora.
  • No dejes las solicitudes de extracción sin responder durante mucho tiempo: Intenta siempre revisar y resolver las solicitudes de extracción lo antes posible para evitar retrasos en las actualizaciones.
  • Haz preguntas: Si algo no está claro, pide una aclaración en lugar de dar por sentado lo que se quiere decir, para evitar malentendidos.
  • Sugerir mejoras: Cuando sea apropiado, ofrece consejos prácticos o enfoques alternativos en lugar de limitarte a señalar los problemas.

Flujos de trabajo avanzados para solicitudes de extracción y prácticas recomendadas

Si eres un programador con experiencia y deseas facilitar la colaboración, mejorar la calidad del código y ampliar tu proceso de solicitudes de extracción, aquí tienes algunos consejos prácticos para optimizar tu flujo de trabajo.

Flujos de trabajo más inteligentes

Los distintos flujos de trabajo de Git gestionan las solicitudes de extracción de diferentes maneras. Como hemos comentado anteriormente, la ramificación de funciones es ideal para equipos pequeños debido a su simplicidad. Sin embargo, puede resultar difícil de mantener si tu equipo crece.

Se recomienda bifurcar los proyectos de código abierto, pero esto puede suponer una sobrecarga a la hora de sincronizar y revisar las contribuciones externas. Del mismo modo, GitFlow se recomienda en desarrollos rápidos, aunque su complejidad puede ralentizar el proceso. 

Automatización e integración

Las solicitudes de extracción modernas cuentan con las comprobaciones CI/CD, que automatizan los controles de calidad mediante la integración de herramientas de integración continua que ejecutan pruebas y linters e implementan vistas previas en cada solicitud de extracción. Esto garantiza que solo se fusione el código que cumpla con los estándares definidos.

Plataformas como GitHub Actions y GitLab Pipelines también permiten la automatización. Estos procesos incluyen la ejecución de pruebas unitarias, la creación y el despliegue de entornos de vista previa, la reducción del esfuerzo manual y la detección temprana de problemas.

Optimización de reseñas

Mantén siempre las solicitudes de extracción breves y concisas para que puedan revisarse de forma rápida y exhaustiva. El uso de plantillas con campos claros, como «Qué ha cambiado» y «Cómo probar», ayuda a los colaboradores a proporcionar información concisa y relevante, lo que hace que las revisiones sean más eficientes.

También debes tener en cuenta que hacer preguntas en lugar de exigir cosas fomenta el diálogo constructivo y el aprendizaje. Si defines plazos para las revisiones, el proceso será predecible y evitarás retrasos.

Métricas y herramientas modernas

También te recomiendo que realices un seguimiento del tamaño de las PR, el tiempo de revisión y la tasa de fusión para identificar cuellos de botella y mejorar la eficiencia del flujo de trabajo. Para facilitar las revisiones y la fusión, prueba a utilizar una solicitud de extracción apilada. Esto dividiría las funciones importantes en PR más pequeñas y conectadas que se complementan entre sí. 

Además, puedes integrar herramientas de IA como GitHub Copilot o CodeWhisperer cuando utilices solicitudes de extracción. Estas herramientas te ayudarán a detectar posibles problemas con la suficiente antelación y te sugerirán cómo solucionarlos.

Solicitudes de extracción frente a Solicitudes de fusión

En GitHub y GitLab, las solicitudes de extracción (PR) y las solicitudes de fusión (MR) se utilizan indistintamente. Aunque tienen el mismo propósito, cada plataforma los gestiona de forma diferente.

La tabla siguiente compara los PR y los MR para resaltar estas diferencias.

Aspecto

Solicitud de extracción (GitHub)

Solicitud de fusión (GitLab)

Terminología

Solicitud para retirar cambios

Solicitud para fusionar cambios

Uso principal

Proponer, revisar y fusionar cambios en el código.

Proponer, revisar y fusionar cambios en el código.

Usuarios típicos

Programadores de código abierto, equipos pequeños y medianos.

Equipos, empresas y repositorios privados con gran presencia de DevOps.

Integración de CI/CD

Acciones de GitHub (opcional, requiere configuración)

CI/CD integrado por defecto

Borrador de apoyo

Soporte nativo para borradores de PR

Compatible mediante la etiqueta «Borrador» o los prefijos WIP.

Combinar aprobaciones

Configuración básica de revisores y aprobadores

Reglas avanzadas: varios aprobadores, procesos de aprobación

Estrategias de fusión

Combinar confirmaciones, fusionar o rebasar

Opciones similares, con restricciones configurables para el método de fusión.

Filosofía del flujo de trabajo

Centrado en los programadores, flexible

Centrado en DevOps, con una estrecha integración entre desarrollo y operaciones.

Conclusión

Las solicitudes de extracción son algo imprescindible para cualquier proyecto serio. Como has visto (y espero que ahora aprecies), permiten a los equipos revisar, debatir y mejorar el código de forma colaborativa.

Sigue mejorando tus habilidades como programador. Echa un vistazo a nuestros programas de habilidades Fundamentos de Git y Fundamentos de GitHub para convertirte en un experto en todo lo relacionado con Git.


Allan Ouko's photo
Author
Allan Ouko
LinkedIn
Creo artículos que simplifican la ciencia de los datos y la analítica, haciéndolos fáciles de entender y accesibles.

Aprende hoy los fundamentos de Git

Para principiantes: Control de versiones maestro mediante Git.
Empieza a aprender gratis

Preguntas frecuentes sobre solicitudes de extracción

¿Una solicitud de extracción es lo mismo que una solicitud de fusión?

GitHub lo llama «solicitud de extracción», mientras que GitLab utiliza «solicitud de fusión», pero ambos realizan la misma tarea.

¿Puedo realizar cambios en una solicitud de extracción después de abrirla?

Sí, si envías nuevas confirmaciones a la misma rama, la solicitud de extracción se actualizará automáticamente.

¿Puedo eliminar una rama después de fusionar una solicitud de extracción?

Sí, se recomienda que elimines la rama después de fusionar la solicitud de extracción para mantener tu repositorio ordenado.

¿Qué es una solicitud de extracción de borrador?

Una solicitud de extracción preliminar es una solicitud de extracción «en curso». Puedes utilizarlo cuando aún no estés listo para fusionar, pero quieras recibir comentarios tempranos.

¿Cuál es la diferencia entre una solicitud de extracción y una rama?

Una rama es una línea de desarrollo independiente, mientras que una solicitud de extracción es una propuesta formal para fusionar los cambios de esa rama en otra rama.

Temas

Aprende Excel con DataCamp

Programa

Fundamentos de GitHub

0 min
Prepárate para la Certificación de Fundamentos de GitHub aprendiendo los fundamentos de Git y GitHub: control de versiones, colaboración y ramificación.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow
Relacionado

Tutorial

Tutorial de GIT Push y Pull

Aprende a realizar solicitudes de Git PUSH y PULL con GitHub Desktop y la línea de comandos.

Olivia Smith

Tutorial

Tutorial de GitHub y Git para principiantes

Un tutorial para principiantes que muestra cómo funciona el control de versiones Git y por qué es crucial para los proyectos de ciencia de datos.
Abid Ali Awan's photo

Abid Ali Awan

Tutorial

Git Prune: Qué es la poda Git y cómo usarla

La poda Git es un comando Git que elimina del repositorio los objetos que ya no son accesibles desde ninguna confirmación o rama, ayudando a liberar espacio en disco.

Tutorial

Git rename branch: Cómo cambiar el nombre de una rama local o remota

Aprende a renombrar ramas Git locales y remotas utilizando el terminal o la interfaz gráfica de usuario (GUI) de clientes populares como GitHub.

Tutorial

Tutorial de Git Revert y Git Reset para principiantes

Una guía tutorial para principiantes que muestra cómo utilizar los comandos Git Revert y Reset.
Zoumana Keita 's photo

Zoumana Keita

Tutorial

Git pull force: Cómo sobrescribir una rama local con una remota

Aprende por qué git pull --force no es la mejor forma de sobrescribir una rama local con la versión remota, y descubre el método adecuado utilizando git fetch y git reset.
Ver másVer más