Waarom Azure Repos?
Azure Repos biedt Git-repository's die in Azure DevOps gehost worden, met beveiliging op enterpriseniveau, integratie met Azure Boards en Azure Pipelines en krachtige samenwerkingsfuncties voor ontwikkelteams. Azure Repos.
Functies van Azure Repos
- Onbeperkt aantal private repository's inbegrepen bij Azure DevOps
- Branch policies voor beschermde branches
- Pull requests met workflows voor codereview
- Integratie met work items en CI/CD-pipelines
- Geavanceerde beveiliging en toegangscontroles
Branchingstrategieën
Git Flow
Traditioneel branchingmodel met develop-, feature-, release- en hotfixbranches. Het meest geschikt voor geplande releases.
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
Vereenvoudigd model met een main-branch en kortlevende featurebranches. Het meest geschikt voor continuous deployment.
main (always deployable) │ ├── feature/add-validation ──→ PR → merge → deploy ├── bugfix/fix-calculation ──→ PR → merge → deploy └── feature/new-report ──→ PR → merge → deploy
Release Flow (de aanpak van Microsoft)
De strategie van Microsoft, die topicbranches combineert met releasebranches voor productieklare code.
Branch policies
Bescherm belangrijke branches met policies:
- Pull requests verplicht: geen rechtstreekse commits naar beschermde branches
- Verplichte reviewers: een minimumaantal goedkeurders
- Buildvalidatie: de CI-build moet slagen vóór de merge
- Gekoppelde work items: PR's moeten naar work items verwijzen
- Afhandeling van opmerkingen: alle opmerkingen moeten opgelost zijn
Best practices voor pull requests
Effectieve PR's maken
- Houd PR's klein en gefocust (minder dan 400 regels)
- Schrijf duidelijke titels en beschrijvingen
- Voeg screenshots toe voor UI-wijzigingen
- Verwijs naar de gerelateerde work items
Richtlijnen voor codereview
- Beoordeel op correctheid, onderhoudbaarheid en beveiliging
- Geef constructieve en concrete feedback
- Gebruik 'Suggest changes' voor concrete voorstellen
- Keur pas goed als u achter alle wijzigingen staat
Git-commando's voor het dagelijkse werk
Veelvoorkomende workflows
- Featureontwikkeling: branch maken, committen, pushen, PR
- Bugfixes: branch vanaf main, oplossen, terug mergen
- Hotfixes: branch vanaf de productietag, dringende fix
Formaat van commitberichten
Gebruik conventional commits: type(scope): beschrijving
# 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
Broncodebeheer voor Dynamics 365
Structuur van de repository
- /solutions - uitgepakte solution-onderdelen
- /plugins - broncode van de plugins
- /webresources - JavaScript-, CSS- en HTML-bestanden
- /scripts - build- en deploymentscripts
- /pipelines - YAML-bestanden voor Azure Pipelines
.gitignore voor Dynamics 365
Sluit buildoutput, verbindingsbestanden en solution-pakketten uit
Best practices voor beveiliging
Beveiliging van repository's
- Gebruik Microsoft Entra ID voor authenticatie
- Pas het principe van minimale rechten toe
- Schakel branch policies in voor bescherming
- Controleer toegang en wijzigingen regelmatig
Gevoelige gegevens beheren
- Commit nooit secrets of connection strings
- Gebruik .gitignore voor lokale configuratiebestanden
- Gebruik Azure Key Vault voor secrets
- Scan repository's op per ongeluk gecommitte secrets
Samenwerken in team
Code owners
Leg een CODEOWNERS-bestand vast om reviewers automatisch toe te wijzen op basis van bestandspaden.
Documentatie
- Voeg README.md toe in elke belangrijke map
- Documenteer de branchingstrategie en de conventies
- Houd de wiki up-to-date met architectuurbeslissingen
Conclusie
Goed broncodebeheer is de basis van succesvolle Dynamics 365-ontwikkeling. Azure Repos biedt de tools voor professionele Git-workflows, van branch policies en pull requests tot integratie met Azure Pipelines. Leg duidelijke branchingstrategieën vast, maak codereview verplicht en automatiseer uw deploymentpipeline voor betrouwbare, herhaalbare releases.