Flujos de trabajo con Git en equipos reales: ¿qué workflow elegir?
En las entrevistas de trabajo suelen preguntar: '¿Qué flujo de trabajo con Git has utilizado?' Después de esta sección, tendrás una respuesta honesta y detallada. Analizaremos tres enfoques populares: Feature Branch Workflow, Git Flow y Trunk-Based Development, y veremos en qué situaciones cada uno funciona bien y en cuáles puede convertirse en un obstáculo.
- Podrás describir tres flujos de trabajo con Git comunes en entrevistas y explicar sus diferencias.
- Comprenderás cómo el tamaño del equipo y la frecuencia de lanzamientos influyen en la elección del proceso de desarrollo.
- Aprenderás a hacer las preguntas correctas sobre el flujo de trabajo al unirte a un nuevo equipo.
จุดเริ่มต้นของบทเรียน
¿Por qué usar Feature Branch Workflow?
- Feature Branch = un borrador independiente para cada capítulo
- Aislamiento del código para trabajo en paralelo
- Experimentación segura sin riesgo para la rama 'main'
- Fácil implementación para equipos de cualquier nivel
- Ideal para el inicio de proyectos y equipos pequeños
Imagina que estás escribiendo un libro y para cada capítulo creas un borrador aparte. Así es exactamente como funciona el Feature Branch Workflow: cada nueva funcionalidad vive en un entorno aislado. Este enfoque permite que los equipos trabajen en diferentes tareas simultáneamente sin generar caos en el código principal. Puedes experimentar con tranquilidad, sabiendo que la rama principal se mantiene estable. Es especialmente útil para equipos pequeños donde la velocidad y la flexibilidad son prioritarias. Cuando la funcionalidad está lista, pasa por una revisión de código (code review) y solo entonces se integra al código principal. La simplicidad y la eficiencia son lo que hacen que este enfoque sea tan popular.
Ciclo de vida de una rama de funcionalidad (feature branch)
- git checkout -b feature/new-payment
- Commits con mensajes claros
- git push origin feature/new-payment
- Creación de un Pull Request (PR)
- Code review e integración (merge) en main
Recorramos todo el camino de una rama de funcionalidad, desde su creación hasta la fusión. Empezamos con el comando git checkout menos b feature barra new-payment; así creamos una nueva rama partiendo de main. Trabajamos en la tarea y realizamos commits, describiendo los cambios de forma clara y detallada. Cuando la funcionalidad está lista, subimos la rama al repositorio remoto y creamos un Pull Request. Los compañeros revisan el código, dejan sugerencias y, tras aplicar las correcciones, los cambios se integran en la rama principal. Una regla fundamental: una rama, una tarea lógicamente completa. Esto ayuda a mantener la historia de commits organizada.
# Creamos la rama desde main
git checkout main
git pull origin main
git checkout -b feature/new-payment
# Trabajamos y hacemos commit
echo 'Add payment processing' > payment.js
git add payment.js
git commit -m 'Añadir módulo de procesamiento de pagos'
# Subimos la rama y creamos el PR
git push origin feature/new-payment
# A continuación, creamos el Pull Request a través de la interfaz de GitHub
Creamos una rama de funcionalidad (feature branch) en 2 pasos
- Feature Branch Workflow: simplicidad y eficiencia
- Creamos la rama a partir de la rama main actualizada
- git checkout -b feature/new-login
- El nombre de la rama debe reflejar la tarea
- Prefijos para mayor claridad: feature/, fix/, docs/
Vamos a crear una rama de funcionalidad en la práctica. Primero, nos cambiamos a la rama principal y la actualizamos: git checkout main y luego git pull. Ahora, creamos una nueva rama para nuestra tarea: git checkout menos b feature slash new-login. El flag menos b le indica a Git que cree la nueva rama y se cambie a ella inmediatamente. Con solo dos comandos, ya estamos listos para trabajar. Asegúrense de que el nombre de la rama refleje la esencia de la tarea: usar prefijos como feature slash, fix slash o docs slash al principio ayudará a entender rápidamente el propósito de la rama. Ahora ya podemos empezar con los cambios.
git checkout main && git pull
# Actualizamos la rama principal
git checkout -b feature/new-login
# Creamos y cambiamos a la nueva rama
บทเรียนฉบับเต็มใช้ได้เมื่อสมัครสมาชิก
ฉบับเต็มมีสไลด์เพิ่มอีก 31 สไลด์
วิดีโอ สไลด์ทั้งหมด โน้ต แบบทดสอบ AI ติวเตอร์ และการสัมภาษณ์จะเปิดหลังเข้าสู่ระบบและสมัครสมาชิก
เข้าสู่ระบบหรือลงทะเบียน สมัครสมาชิกเนื้อหาบทเรียน
- ¿Por qué usar Feature Branch Workflow?
- Ciclo de vida de una rama de funcionalidad (feature branch)
- Creamos una rama de funcionalidad (feature branch) en 2 pasos
- Enviamos los cambios a revisión
- Revisión de código y fusión (merge)
- Git Flow: El flujo de trabajo industrial
- Ramas de funcionalidad y preparación del lanzamiento
- Correcciones urgentes mediante Hotfix
- Práctica: creación de rama de funcionalidad
- Iniciando Git Flow en un proyecto
- Desarrollo de una nueva funcionalidad: de la rama a la fusión
- Preparando el lanzamiento: empaquetando cambios
- Correcciones urgentes: hotfixes en acción
- Trunk-Based Development: esencia del enfoque
- Cómo trabajar con funcionalidad no terminada en TBD
- Práctica: commits frecuentes en main
- Cuándo elegir Trunk-Based Development
- Error 1: Git Flow para equipos pequeños
- Error 2: Trunk-Based sin code review
- Error 3: Ramas de funcionalidad de larga duración
- Cómo elegir el flujo de trabajo adecuado
- Cómo elegir un proceso Git: criterios clave
- Feature Branch: el utilitario para startups
- Git Flow: el todoterreno para equipos grandes
- Trunk-Based: el bólido de carreras para lanzamientos frecuentes
- Análisis del proceso actual en Git: problemas con Git Flow
- Plan de migración: Cómo mudarse de una casa a un estudio
- Capacitación del equipo en las nuevas prácticas de TBD
- Práctica: migración de rama de característica a TBD
- Cómo hablar sobre workflow en una entrevista técnica
- Ejemplos de problemas y sus soluciones
- Cómo implementar cambios en el proceso
- Qué no decir en una entrevista de trabajo
- Eligiendo nuestro camino: conclusiones y tarea
บทความเกี่ยวกับบทเรียนนี้
- Git merge กับ rebase: ควรเลือกแบบไหนสำหรับทีมของคุณ
- คำถาม Git ในการสัมภาษณ์งาน: 25 ข้อพร้อมคำตอบ
- Git Flow, GitHub Flow และ trunk-based: ควรเลือก Git workflow แบบไหน
- Git และ GitHub: ต่างกันอย่างไร และเชื่อมโยงกันอย่างไร
- วิธีติดตั้ง Git บน Windows, macOS และ Linux
บทเรียนทั้งหมดในคอร์สนี้
- Introducción: Git desde cero hasta desarrollador seguro
- Por qué necesitamos Git y por qué es imprescindible para conseguir trabajo
- Instalación y configuración: preparando Git para su primer uso
- Primer repositorio: init, add, commit y la magia del índice
- Leyendo el historial: log, diff, show y navegación por el pasado
- Ramas: la realidad paralela de tu código
- Deshaciendo cambios: restore, reset, revert — correcto y peligroso
- GitHub y repositorios remotos: tu código en la nube
- Trabajo en equipo: forks, ramas de características y pull requests
- Conflictos de fusión: no entres en pánico, comprende y resuelve
- Flujos de trabajo con Git en equipos reales: ¿qué workflow elegir?
- Herramientas avanzadas: rebase, stash, cherry-pick y etiquetas
- Proyecto final: simulando un desarrollo en equipo real