Git Workflow
Last updated
Was this helpful?
Last updated
Was this helpful?
Wij werken met de Gitflow Workflow van Atlassian. Wij maken onderscheid tussen een feature
, docs
, development
, release
en main
branch.
Naar development
is 1 approval nodig en naar main
zijn er drie nodig. Hierdoor wordt de kwaliteit van de code gewaarborgd.
Binnen het project hebben wij vier borden:
Bugs en Hotfixes
Taken (taken vanuit stories)
Documentatie en Workflow
Features (stories)
Elk issue wordt gekoppeld aan het projectbord waar het bij hoort. Op het moment dat iemand ergens mee bezig is, wordt de issue naar Doing gezet, zodat iedereen weet wie waar mee bezig is.
Om alles consistent en duidelijk te houden, zijn er templates gemaakt voor de issues en pull request. Hierdoor hoef je niet meer na te denken over wat er precies in een pull request moet komen, maar staat dit er al automatisch.
Daarnaast worden er automatisch deploy previews door Netlify gemaakt. Hierdoor heeft elk pull request haar eigen deploy preview. De reviewer kan hierdoor snel zien wat er is aangepast en hier feedback over geven.
Er worden issues gemaakt voor zowel de stories, als de taken die daarbij horen. Wij maken gebruik van labels, waardoor het duidelijk is wat voor soort issue het is.
Door alles via Issues te doen, is het mogelijk om het in het projectbord te gooien, zodat iedereen elkaars voortgang ziet.
GitHub Actions is een manier om code te controleren. Zelf hebben wij drie workflows: een voor alle branches, een voor development
en een voor main
.
Wat zij in feite alle drie doen, is een npm run lint
en checken hierdoor of de code overeen komt met onze code style. Is dit het geval, dan kan een PR gemerged worden. Anders niet. Door dit te doen, blijft onze code consistent.
In de workflow op development
en main
wordt dit ook gedaan, maar wordt er ook nog gecheckt of de app werkt op Node 12, 14 en 16. In onze .nvmrc
staat lts/fermium
wat dus betekent dat ons project op Node 14 draait. Om deze reden is het wellicht overbodig om dit nog extra te checken, maar het kan nooit kwaad.