Github har något som heter Github Pages som gör att man kan ha webbplatser till sina repositories, fast bara statiska sidor.

Jekyll är ett (blogg-)program som genererar statiska sidor. Man skriver sina blogginlägg i markdown, med lite information om inlägget i YAML-format.

När man laddar upp sina sidor till Github Pages körs filerna genom Jekyll, och om det då är markdown görs det om till HTML.

Octopress är baserat på Jekyll, men med ett antal plugins, med mera, förinstallerat.

Sätta upp bloggen

Du måste ha minst Ruby 1.9.2 för att kunna köra Octopress. Jag vet inte hur man gör på Windows, men i Mac OS X och Linux kan du köra:

git clone git://github.com/imathis/octopress.git octopress
cd octopress
bundle install
bundle exec rake install

Detta kommer klona Octopress från Github till mappen octopress, installera alla gems som behövs och tillslut installera Octopress standardtema.

För att hosta bloggen på Github måste du skapa ett repository med namnet <användarnamn>.github.com. Sen fixar rake setup_github_pages resten.

Inställningar

Inställningarna finns i _config.yml och är ganska självförklarande.

Första inlägget

rake new_post["Hello world"]

Kommandot kommer skapa en ny fil i source/_posts med filnamnet ÅÅÅÅ-MM-DD-hello-world.markdown, det är i denna filen du skrivet ditt blogginlägg. Mer info om Markdown och dess syntax.

Överst i filen hittar du information om blogginlägget i YAML-format. Ett tips är att lägga till published: false under tiden du skriver inlägget för att det inte ska synas, även om du pushar till Github.

När du har skrivit färdigt inlägget genererar du html-filerna i mappen _deploy/, och pushar till master branchen.

bundle exec rake generate
bundle exec rake deploy

Pusha source/ till Github måste du göra manuellt.

git add .
git commit -m 'Hello world!'
git push origin source

Ändra utseendet

Man ändrar utseendet i sass/custom/ men kom ihåg att lägga till filerna du har ändrat till sass/screen.scss.

Ändra CSS är enkelt, det är tyvärr inte HTML. Filerna finns utspridda lite överallt i source/. Om du letar lite hittar du tillslut den filen du vill ändra.

Egen domän

För att koppla en egen domän till din blogg måste du skapa en fil med namnet CNAME i source/.

cd source
echo 'klamby.com' >> CNAME
bundle exec rake generate
bundle exec rake deploy

Pusha sen source/ till Github.

git add .
git commit -m 'Created a CNAME for Klamby.com'
git push origin source