Pourquoi Azure Repos ?
Azure Repos fournit des dépôts Git hébergés dans Azure DevOps, offrant une sécurité de niveau entreprise, l'intégration avec Azure Boards et Pipelines, et des fonctionnalités de collaboration puissantes pour les équipes de développement logiciel. Azure Repos.
Fonctionnalités d'Azure Repos
- Repos privés illimités inclus avec Azure DevOps
- Politiques de branche pour les branches protégées
- Pull requests avec workflows de revue de code
- Intégration avec les éléments de travail et pipelines CI/CD
- Contrôles de sécurité et d'accès avancés
Stratégies de branchement
Git Flow
Modèle de branchement traditionnel avec branches develop, feature, release et hotfix. Idéal pour les releases planifiées.
main (production) │ ├── hotfix/urgent-fix ──→ (merge to main and develop) │ develop (integration) │ ├── feature/user-story-123 ──→ (merge to develop) ├── feature/user-story-456 ──→ (merge to develop) │ └── release/1.0 ──→ (merge to main, tag, merge back to develop)
GitHub Flow
Modèle simplifié avec branche main et branches feature de courte durée. Idéal pour le déploiement continu.
main (always deployable) │ ├── feature/add-validation ──→ PR → merge → deploy ├── bugfix/fix-calculation ──→ PR → merge → deploy └── feature/new-report ──→ PR → merge → deploy
Release Flow (Approche Microsoft)
Stratégie de Microsoft combinant les branches topic avec les branches release pour du code prêt à la production.
Politiques de branche
Protégez les branches importantes avec des politiques :
- Exiger les pull requests : pas de commits directs sur les branches protégées
- Réviseurs requis : nombre minimum d'approbateurs
- Validation de build : le build CI doit passer avant la fusion
- Éléments de travail liés : les PRs doivent référencer des éléments de travail
- Résolution des commentaires : tous les commentaires doivent être résolus
Bonnes pratiques des pull requests
Créer des PRs efficaces
- Gardez les PRs petites et ciblées (moins de 400 lignes)
- Rédigez des titres et descriptions descriptifs
- Incluez des captures d'écran pour les changements d'UI
- Référencez les éléments de travail liés
Directives de revue de code
- Vérifiez la correction, la maintenabilité et la sécurité
- Soyez constructif et spécifique dans vos retours
- Utilisez 'suggérer des changements' pour des recommandations spécifiques
- Approuvez seulement lorsque vous êtes à l'aise avec tous les changements
Commandes Git pour le travail quotidien
Workflows courants
- Développement de fonctionnalité : Créer branche, commit, push, PR
- Corrections de bugs : Branch depuis main, corriger, merge
- Hotfixes : Branch depuis le tag de production, correction urgente
Format des messages de commit
Utilisez les commits conventionnels : type(scope): description
# Format: <type>(<scope>): <description> # Types: feat: New feature fix: Bug fix refactor: Code refactoring docs: Documentation test: Adding tests chore: Maintenance tasks # Examples: feat(account): Add email validation to contact form fix(pricing): Correct calculation for discounts refactor(plugin): Extract validation to service class
Contrôle de source Dynamics 365
Structure du dépôt
- /solutions - Composants de solution dépackagés
- /plugins - Code source des plugins
- /webresources - Fichiers JavaScript, CSS, HTML
- /scripts - Scripts de build et déploiement
- /pipelines - Fichiers YAML Azure Pipeline
.gitignore pour Dynamics 365
Excluez les sorties de build, fichiers de connexion et fichiers de package de solution
Bonnes pratiques de sécurité
Sécurité du dépôt
- Utilisez Microsoft Entra ID pour l'authentification
- Mettez en œuvre le principe du moindre privilège
- Activez les politiques de branche pour la protection
- Auditez régulièrement les accès et changements
Gestion des données sensibles
- Ne commitez jamais de secrets ou chaînes de connexion
- Utilisez .gitignore pour les fichiers de config locaux
- Utilisez Azure Key Vault pour les secrets
- Scannez les repos pour les secrets accidentellement committés
Collaboration d'équipe
Propriétaires de code
Définissez un fichier CODEOWNERS pour assigner automatiquement des réviseurs selon les chemins de fichiers.
Documentation
- Incluez un README.md dans chaque dossier majeur
- Documentez la stratégie de branchement et les conventions
- Gardez le wiki à jour avec les décisions d'architecture
Conclusion
Des pratiques de contrôle de source efficaces sont fondamentales pour un développement Dynamics 365 réussi. Azure Repos fournit les outils nécessaires pour des workflows Git professionnels, des politiques de branche et pull requests à l'intégration avec Azure Pipelines. Établissez des stratégies de branchement claires, appliquez la revue de code et automatisez votre pipeline de déploiement pour des releases fiables et reproductibles.