Waarom je gebruik moet maken van version control met Git

Werk je als developer aan een website, dan kun je tegenwoordig haast niet meer zonder een vorm van versiebeheer. Versiebeheer is een systeem dat elke wijziging aan een bestand, of een reeks bestanden bijhoudt, zodat je deze op een later tijdstip altijd terug kunt vinden. Wij maken bij Red Banana gebruik van Git. Waarom we dit doen lees je hieronder.

Samenwerken

Omdat wij soms met meerdere programmeurs werken, moeten we dit op een handige manier oplossen. Er moet een manier zijn om samen aan eenzelfde website te werken, zonder dat de werkzaamheden van elkaar de ander in de weg zit.

Zonder versiebeheer heb je misschien een website op een NAS draaien, met een gedeelde map waar iedereen in kan. Om vervolgens elke keer door het kantoor te moeten schreeuwen dat jij in een bepaald bestand aan het werken bent, terwijl de ander hier vervolgens niet in kan, is niet handig voor de workflow van de programmeurs. En mocht je een keer vergeten de ander op de hoogte te stellen van je wijzigingen kun je zomaar een hele dag werk van de ander overschrijven.

Gelukkig is daar een oplossing voor: Git. Door Git kun je heel eenvoudig met een heel team een eigen kopie van de site lokaal draaien. Wanneer je tevreden bent met een gedeelte, kun je deze vervolgens “duwen” naar de “hoofd”-omgeving, waar alle wijzigingen van het team worden samengevoegd.

Beheren van versies

Elke wijziging in een nieuw bestand opslaan, zonder behulp van versiebeheer is haast een onmogelijke taak. Wanneer sla je een wijziging op? Hoe noem je de bestanden? En vooral: waar heb je een bepaalde wijziging ook alweer opgeslagen?

Met Git is dit geen probleem. Elke keer als je een wijziging hebt doorgevoerd, dien je deze te “committen”. Wanneer je dit doet, wordt er automatisch een wijziging opgeslagen en dien je tevens een bericht toe te voegen. Hier voeg je toe wat je gedaan hebt. Denk bijvoorbeeld aan een bericht als ‘kleur van de call-to-action knop aangepast’. Dit zijn korte bondige berichten die door heel het team te bekijken zijn. Moet de kleur toch weer terug gewijzigd worden? Met een druk op de knop zet je zo de oude versie weer terug.

Daarnaast slaat Git ook alleen de wijzigingen op, en niet alle oude versies van de bestanden. Dit kan al snel honderden MB’s schelen.

Backups

Ik ben er zelf schuldig aan: Het vergeten van het maken van back-ups. En hoe vaak ik ook al data kwijtgeraakt ben, toch neem ik vaak niet de moeite om bestanden ergens op te slaan. Dankzij Git is dit probleem compleet verholpen. Het gehele team heeft het hele systeem namelijk lokaal opgeslagen, en daarnaast wordt de ‘hoofdversie’ (de zgn. master) ook nog in de cloud opgeslagen, bijvoorbeeld bij een service als Github of Bitbucket.

Updates

Naast de websites van klanten, kunnen we ook zogenaamde plugins gebruiken als versiebeheer. Denk hierbij bijvoorbeeld aan Google Analytics. Dit is een code die we op meerdere sites gebruiken. Willen we hier een wijziging doorvoeren? Dan hoeven we dit maar een keer te doen. Deze versie “duwen” we vervolgens naar de live-omgeving, waarna deze op al onze sites een update krijgt. Hierdoor hoeven we niet meer meerdere websites aan te passen met dezelfde code.

Dit bericht verscheen eerder op: redbanana.nl.

Vond je dit interessant, en wil je meer weten? Neem dan gerust contact met mij op!

✉️ Neem contact op