Wie ich zu GitHub & JBake gewechselt bin
* Diese Seite ist ~~im Aufbau~~ unvollständig... *
Zuerst: Es ist nicht meine Erfindung! Viele haben es schon vorher gemacht, es gibt viele Beschreibungen da draußen. Es hat trotzdem einige Zeit gedauert ;)
Dieser und dieser Beitrag waren die inspirierendsten Quellen und die einfachste Erklärung (die Vertrauen gibt ;) ).
Einrichtung
So sieht das Gesamtkonzept aus, das ich habe:
- Ein Verzeichnis auf meinem Mac, das den Inhalt enthält. Ich verwende die grundlegende Struktur, die JBake verwendet.
- Ein git-geklontes Verzeichnis auf meinem Mac mit dem Output des JBake-Prozesses
- Ein kleines Skript, das ich jedes Mal ausführe, wenn ich etwas geändert habe. Das Skript übernimmt das Backen und das Veröffentlichen auf Git
- Und natürlich die Einstellungen im DNS, um meinen Domainnamen auf die GitHub-IPs zu verweisen
JBake
Warum benutze ich JBake? Ich mag das Prinzip und fühle mich in Java wohler als in anderen Programmiersprachen. Ich habe den internen Code von JBake nicht angefasst, aber ich bin zuversichtlich, dass ich es könnte. Die Arbeitsweise von JBake ähnelt dem berühmten Jekyll: Es analysiert Inhaltsdateien und erstellt daraus (statische) HTML-Dateien. Die Inhaltsdateien können Markdown oder andere Formate enthalten; ich verwende nur Markdown.
Meine Verzeichnisstruktur sieht folgendermaßen aus:
.
|-- assets
| |-- favicon.gif
| |-- robots.txt
| |-- img
| | |-- logo.png
| |-- js
| | |-- custom.js
| |-- css
| |-- style.css
|
|-- content
| |-- about.html
| |-- 2013
| |-- 01
| | |-- hello-world.html
| |-- 02
| |-- weekly-links-1.ad
| |-- weekly-links-2.md
|
|-- templates
| |-- index.ftl
| |-- page.ftl
| |-- post.ftl
| |-- feed.ftl
|
|-- jbake.properties
Standardmäßig erzeugt JBake das Ausgabeverzeichnis in diesem Baum. In meinem Fall backe ich meine Sachen in ein Verzeichnis, das mit Git synchronisiert wird.
Die GitHub-Einrichtung
Die DNS-Einstellungen
Als Nächstes
Es gibt ein paar Dinge, die ich ändern möchte.