Onze core-business is uiteraard Hosting (“voor hosting groot & klein, moet u bij Nucleus zijn” ), maar om dat allemaal vlot te beheren schrijven we ook heel wat software voor onszelf. Zo zijn ons controlpanel, de website en de bestelwizard, ons ticketing-systeem, onze status pagina’s, de helpdesk en de interne back-end allemaal zelf geschreven. Daarbij komt nog eens dat er op heel wat servers speciale scripts draaien, bedoelt om onze Shared Hosting te configureren, onze mail cluster te beheren, de DNS records voor domeinnamen in te stellen en noem maar op.

Allemaal stukken code die in-house worden ontwikkeld, en waar we nood hebben aan “revision/version control” – het kunnen teruggaan naar vorige versies en vlot kunnen wisselen tussen verschillende projecten, zonder werk te verliezen.

De bijna de-facto standaard 4j geleden was nog SVN, omdat het voor zowel systeembeheerders als ontwikkelaars gekend was. Het doet zijn werk goed, maar er zijn enkele onhandige nadelen. Zo is het niet evident om vlot te wisselen tussen meerdere projecten, ontbreekt het aan goed-werkende branching binnen een Code Repository en werkt het vrij log omdat je continu “online” werkt. Bij elke commit/checkout contacteer je de centrale SVN server om gegevens op te vragen.

Daarom zijn we nu enkele maanden geleden overschakeld op GIT, een alternatief Version Control systeem dat oa. gebruikt wordt voor de Linux Kernel, en waar heel wat open-source projecten van gebruik maken (zoals te zien op Github).

Onze nood naar vorige commit-data was klein, dus konden we zonder problemen “opnieuw” beginnen met de GIT repository op te bouwen, zodat we een vlotte omschakeling van SVN naar GIT konden maken. We gebruiken nu een combinatie van WebDAV en Apache Authenticatie als Access Controll List (ACL) om onze commits te loggen, en viewgit als weergave voor al die commit-data.

20110622-git_viewgit

Door gebruik te maken van GIT heeft elke ontwikkelaar bij Nucleus nu een eigen lokale repository waar snel in gewerkt kan worden in aanvulling van een centrale repository waar we onze code naar committen.

Een dringende hotfix, nieuwe releases, … beheren we via de methodieken die via Git Flow zijn vastgelegd, die een vlotte manier tussen Development -> Staging -> Production kunnen voorzien.

Gerelateerde berichten
Nucleus - Laravel

Wat is de beste manier om Laravel te hosten?

Wat is de beste manier om Laravel te hosten? Door Laravel, Forge en gebruiksvriendelijke deployments te combineren met managed hosting. Lees hier waarom!

Lees meer

Spectre en Meltdown

Spectre en Meltdown: wat was de échte impact ?

Spectre en Meltdown – en meer bepaald het patchen van de lekken – hebben zowat elke system administrator bezig gehouden de afgelopen dagen. Nu […]

Lees meer

Spectre en Meltdown

Important information regarding Meltdown & Spectre CPU vulnerabilities

By exception, this blogpost will be in English to inform all our clients. News has come out about highly critical vulnerabilities in all Intel […]

Lees meer