TO Versiebeheer - BarackOLlama/Research GitHub Wiki
Het project wordt beheerd door te alles te documenteren. Voor ieder los onderdeel in het project wordt de versie met bijbehorende datum en tijdstip opgeslagen. Daarbij een omschrijving over wat elke versie inhoudt en de wijzigingen die zijn uitgevoerd.
Branches
Het onderverdelen van branches gaat als volgt:
- Development
- Testing
- Master
Branches uitleg
De development branch is de basis voor iedere developer om nieuwe code vanaf door te ontwikkelen. Dit is altijd de meest recente versie van het product. Onderling spreken we af aan de hand van deadlines en communicatie wanneer deze branche gepushed wordt naar “Testing”, waarna het testprotocol van start gaat. Mochten de testen succesvol zijn zal deze branche gemerged worden met “Master” waar dan de laatst geteste versie beschikbaar is voor eventuele productie. Door middel van het introduceren van rechten voor gebruikers binnen de GitHub organisatie kan alleen de configuratie manager deze samenvoeg procedure starten.
Voor ieder stukje nieuwe functionaliteit zal een nieuwe branch gestart moeten worden, die vervolgens gelinkt moet worden aan een issue waarin de functionaliteit beschreven wordt. Niemand kan direct mergen met Development behalve de configuratie manager. Een developer kan een pull request aanmaken, en om een code review vragen. Pas nadat er een review heeft plaatsgevonden en de code goedgekeurd kan de branch pas samengevoegd worden. Deze “functionaliteiten branches” kunnen geheel zelf beheerd worden door de developer.
Meer over het gebruik van GitHub kun je vinden bij “Coding guidelines”.