Voor deze site gebruik ik onder de motorkap Ghost en voor het uiterlijk een thema (Curious) van Just Good Themes. Dat is een prima thema, maar er zijn wel wat kleine dingen die ik graag anders wil. En aanpas in de onderliggende files. Probleem dat er regelmatig updates van het thema zijn die ik wil meenemen zonder mijn wijzigingen te overschrijven.

Een tijdje probeerde ik dat te automatiseren met git. Met een master branche waar mijn wijzigingen in zaten. En een branche met de nieuwe versie van het thema. Tijdens de merge van die twee probeerde ik mijn wijzigingen te behouden en de updates mee te nemen. Bijbehorend voordeel van git is dat de synchronisatie tussen een locale ontwikkelomgeving en de server waar Ghost draait eenvoudig is. Dat leek leuk, maar gaf teveel gedoe. Ik heb mijn ambities omlaag geschroefd en volg nu deze eenvoudige workflow.

Ten eerst heb je een ontwikkelomgeving nodig. Ghost is een NPM app, dus installatie gaat via een paar commando's. Dit werkt in elke omgeving, ChromeOS, MacOS, zelfs met Windows. Het komt neer op de onderstaande stappen, maar hier staan alle details.

# install cli

npm install ghost-cli -q

# installatie ghost

ghost install local

# Site draait direct

http://localhost:2368/ghost

Die link kun je openen in je browser, en je hebt nu een compleet Ghost blog lokaal werkend. Alleen zonder je eigen content en thema. Tweede stap is die te importeren.

  1. Verwijder de standaard berichten die je hebt na de eerste installatie.
  2. Exporteer de content (berichten zonder plaatjes) uit je site (als zip file) en importeer lokaal. Dat kan allemaal in de menu's van Ghost, geen command line nodig.
  3. Exporteer het thema uit je site (met wijzigingen dus) en importeer lokaal
Eenvoudige menu's voor import en export van content

Daarna importeer je de laatste versie van het thema.

Nu is je testomgeving vrijwel gelijk (alleen plaatjes ontbreken) aan je site en kun je rommelen en je wijzigingen bekijken. Je kunt meerdere versies van een thema installeren en aan- en uitzetten.

Mijn oplossing is een notitie te hebben van wijzigingen die ik toepas op de nieuwe versie van het thema. Dat is maximaal 15 minuten werk. Daarna exporteer die versie als zipfile en importeer ik die weer op mijn site.  
Dit is natuurlijk allemaal enorm low-tech, maar soms werkt dat gewoon eenvoudiger en sneller ☺