Feature Branch Workflow¶
Verbeter je samenwerking op git door te werken met feature branches.
Wat is de ‘feature branch workflow’?¶
Wanneer je samenwerkt met anderen binnen dezelfde repository wil je doorgaans niet zomaar alle aanpassingen direct op de main branch aanbrengen. Een manier om meer controle te krijgen over welke aanpassingen op de main branch komen is door geen commits te doen op de main branch en te werken met feature branches.
Stappen¶
- Feature branch aanmaken: Voor elke feature wordt er een aparte branch gemaakt die we koppelen aan een issue op GitLab. De ontwikkelaar die aan deze feature werkt, doet al zijn commits op deze branch.
- Merge request: Zodra de branch voldoet aan de acceptatie criteria van het issue, maak je een merge request aan op GitLab naar de main branch.
- Feedback krijgen: De merge request wordt altijd door ten minste één andere ontwikkelaar nagekeken. Via GitLab kan er commentaar gegeven worden op specifieke stukken code.
- Mergen: Zodra al het commentaar verwerkt is, kan de merge request worden voltooid en gaan de wijzigingen naar de main branch.
Voordelen¶
- Het dient als een manier om kennis over te dragen binnen je team.
- Het helpt bij het vroegtijdig opsporen en corrigeren van fouten, wat de kwaliteit van het project verbetert.
- Het voorkomt dat één teamlid veranderingen aanbrengt waar anderen het niet mee eens zijn.
Tips
- Het is natuurlijk altijd mogelijk om tussentijdse wijzigingen aan de main branch terug te mergen naar je feature branch.
- Merge altijd eerst de main branch terug in je feature branch voordat je een merge request aanmaakt. Hierdoor kun je testen of je wijzigingen ook werken in combinatie met de wijzigingen op de main branch.
- Het is mogelijk om directe commits op de main branch te verbieden en alles verplicht via merge requests te laten lopen.
- Beperk de grootte van een merge request. Hoe kleiner de hoeveelheid wijzigingen, des sneller je werk is nagekeken en des te beter het commentaar.
- Spreek een naamgeving af voor de feature branches samen met je team. Een populaire structuur is ‘feature/#id-van-issue_korte_herkenbare_naam. Dus bijvoorbeeld ‘feature/1423_verbeter_styling_van_knoppen’.
Oefening
Je kan een keer oefenen met een merge request door een mop toe te voegen aan deze repository met moppen.
- Maak een feature branch aan voor de mop repo.
- Voeg een mop toe aan jokes.md.
- Maak een merge request aan naar de main branch.
- Wacht op commentaar. De mop kan bijvoorbeeld te grof zijn of een spelfout bevatten.
- Verwerk al het commentaar.
- Rond de merge request af.
Verder lezen¶
- Merge Request: meer informatie en tips over merge requests.
- Git Feature Branch Workflow: uitgebereider artikel over de workflow uit dit artikel.
- Git Flow: Alternatieve workflow voor complexere projecten.
Last update:
August 29, 2023