Introducción

Completado

Las estrategias eficaces de bifurcación de Git son fundamentales para la entrega correcta de software a escala. En este módulo se proporcionan instrucciones completas sobre el diseño e implementación de flujos de trabajo de bifurcación que admiten la entrega continua, la colaboración en equipo y la garantía de calidad. Aprenderá a seleccionar e implementar el modelo de bifurcación adecuado para las necesidades de su organización, tanto si trabaja con equipos ágiles pequeños como con organizaciones de desarrollo empresarial grandes.

¿Por qué importa la estrategia de bifurcación?

Los equipos de desarrollo de software moderno requieren estrategias de bifurcación que equilibran varios problemas críticos:

  • Velocidad de desarrollo: habilite a los equipos para que funcionen de forma independiente sin bloquearse entre sí.
  • Control de calidad: mantenga la calidad del código a través de procesos de revisión y pruebas sistemáticos.
  • Administración de versiones: admite versiones de software predecibles y confiables.
  • Mitigación de riesgos: aísle el trabajo experimental y proporcione funcionalidades de reversión.
  • Requisitos de cumplimiento: cumpla los estándares normativos y de auditoría para la administración de cambios.

Marco de estrategia de bifurcación empresarial

Consideraciones estratégicas para la selección de modelos de bifurcación:

Factor Impacto en la estrategia Preguntas clave
Tamaño del equipo Complejidad de coordinación y frecuencia de combinación ¿Cuántos desarrolladores funcionan simultáneamente?
Cadencia de lanzamiento Tiempo de integración y ciclo de vida de las ramas ¿Con qué frecuencia implementa en producción?
Requisitos de calidad Revisión de procesos y pruebas de integración ¿Qué nivel de puertas de calidad se necesitan?
Necesidades de cumplimiento Seguimientos de auditoría y flujos de trabajo de aprobación ¿Qué requisitos normativos se aplican?

Los propios equipos de desarrollo de Microsoft muestran estos principios a gran escala, usando GitHub Flow para los servicios que requieren una implementación rápida y enfoques más estructurados para los productos empresariales que requieren ciclos de prueba extensos.

Objetivos de aprendizaje completos

Después de completar este módulo, dominará las estrategias de bifurcación esenciales y podrá:

Diseño estratégico de bifurcaciones:

  • Evalúe y seleccione los flujos de trabajo de bifurcación de Git adecuados en función del tamaño del equipo, la cadencia de versión y los requisitos de calidad.
  • Diseñe estrategias de bifurcación que admitan la entrega continua al tiempo que se mantienen los estándares de calidad y cumplimiento de código.
  • Implementar políticas de bifurcación de escala empresarial y marcos de gobernanza.

Aptitudes prácticas de implementación:

  • Implemente flujos de trabajo de rama de características con aislamiento adecuado, procesos de revisión y estrategias de integración.
  • Configuración y administración GitHub Flow para equipos que requieren una implementación rápida y continua.
  • Ejecute flujos de trabajo de bifurcación para proyectos de código abierto y colaboración en equipo distribuida.
  • Establezca restricciones de protección y fusiones de ramas que apliquen criterios de calidad y requisitos de revisión.

Experiencia en la plataforma:

  • Aproveche las características avanzadas de bifurcación de Azure Repos para entornos de desarrollo empresarial.
  • Integre estrategias de bifurcación con canalizaciones de CI/CD y marcos de pruebas automatizadas.
  • Supervise y optimice los flujos de trabajo de bifurcación para la productividad del equipo y la velocidad de entrega.

Autoevaluación: evalúe su preparación para la ramificación

Aspectos básicos de Git

  • [ ] ¿Comprende los conceptos básicos de Git, como confirmaciones, ramas y combinaciones?
  • [ ] ¿Está familiarizado con los conceptos de control de versiones distribuidos?
  • ¿Sabe cómo resolver conflictos de combinación?

Experiencia de desarrollo en equipo

  • [ ] ¿Ha trabajado en equipos con repositorios compartidos?
  • [ ] ¿Comprende los procesos de revisión de código y las solicitudes de incorporación de cambios?
  • [ ] ¿Está familiarizado con los conceptos de integración continua?

Contexto organizativo

  • [ ] ¿El equipo tiene programaciones de lanzamiento específicas o requisitos de cumplimiento?
  • [ ] ¿Trabaja con equipos distribuidos entre zonas horarias?
  • [ ] ¿Necesita coordinarse con varios equipos o colaboradores externos?

Requisitos previos y preparación

Conocimientos esenciales:

  • Aspectos básicos de DevOps: descripción de los principios de DevOps, la integración continua y los conceptos de entrega.
  • Conceptos básicos del control de versiones: familiaridad con los principios de control de versiones (una revisión completa pero beneficiosa proporcionada).
  • Experiencia de desarrollo de software: antecedentes en entornos de desarrollo de software basados en equipo.

Experiencia recomendada:

  • Línea de comandos de Git: conocimientos básicos de los conceptos y comandos de Git.
  • Flujos de trabajo de solicitud de cambios: experiencia con procesos de revisión de código.
  • Conocimiento de CI/CD: Comprensión de los procesos automatizados de compilación e implementación.

Configuración necesaria:

  • Instalación de Git: asegúrese de que Git está instalado y configurado en el entorno de desarrollo.
  • Cuenta de GitHub: acceso a GitHub para ejercicios prácticos con flujos de trabajo de bifurcación modernos.
  • Acceso a Azure DevOps: acceso de la organización para ejercicios de Azure Repos (se puede crear durante el módulo).