Développement basé sur la branche principale

Git avancé

Amanda Crawford-Adamo

Software and Data Engineer

Qu'est-ce que le Trunk Based Development ?

  • Modèle CI/CD avec branches en contrôle de source
  • Les développeurs ne poussent plus vers des branches de livraison séparées
  • Les changements viennent de branches éphémères fusionnées dans main
  • Petites mises à jour fréquentes

Un graphe de validations sur la branche principale montrant la branche comme tronc de livraison

Git avancé

Principes clés du Trunk Based Development

  1. Validations fréquentes sur main
  2. Branches de fonctionnalité de courte durée (< 1 jour)
  3. Intégration continue
  4. Fanions de fonctionnalité pour le travail inachevé

Illustration du flux de travail trunk : branche courte avec un fanion de fonctionnalité lors de la validation sur main.

Git avancé

Fanions de fonctionnalité en TBD

  • Gère les fonctionnalités incomplètes
  • Empêche d'affecter les utilisateurs
  • Déploiement graduel des fonctionnalités

Exemple de code avec fanion de fonctionnalité

  if feature_flag_enabled('new_feature'):
      # New feature code
  else:
      # Old feature code
Git avancé

Intégration continue en TBD

  • Les validations sur main déclenchent la construction automatisée et les tests
  • Moins d'entretien et livraisons plus rapides
  • Produit toujours fiable et stable
  • Assure la sécurité du code et la conformité aux normes du secteur
  • Maintient la qualité du code et réduit le risque de bogues
Git avancé

Avantages et défis du TBD

Avantages :

  • Moins de conflits de fusion
  • Cycles de livraison plus rapides
  • Meilleure qualité de code
  • Collaboration accrue

Défis :

  • Discipline d'équipe requise
  • Nécessite des tests robustes
  • Courbe d'apprentissage initiale
  • Gestion du travail incomplet
Git avancé

Pratiques exemplaires

  1. Valider de petits changements souvent
  2. Automatiser les tests et le déploiement
  3. Utiliser des fanions de fonctionnalité pour le travail inachevé
  4. Faire des revues de code régulières
  5. Surveiller après le déploiement
Git avancé

Passons à la pratique !

Git avancé

Preparing Video For Download...