Vorbereitung

Lokal

Ordner “blog” im lokalen Ordner erstellen.

mkdir blog

Eventuell ist es noch notwendig git default branch auf “main” setzen:

git config --global init.defaultBranch main

Server

Auf dem Server mit ssh einloggen:

ssh ssh-wXXXXX@deinedomain.de

Eventuell hier auch git default branch auf “main” setzen.

Dann folgende Ordner erstellen:

mkdir -p /www/htdocs/wXXXXX/edit_blog.git
mkdir -p /www/htdocs/wXXXXX/live_blog

zum edit_blog.git Ordner wechseln:

cd /www/htdocs/wXXXXX/edit_blog.git
git init --bare

post-receive Datei erstellen

Es muss noch die Datei post-receive im Ordner edit_blog.git/hooks/ erstellt werden:

vim hooks/post-receive

    #!/bin/sh
    echo "Start deployment"
    git --work-tree=/www/htdocs/wXXXXX/live_blog --git-dir=/www/htdocs/wXXXXX/edit_blog.git checkout -f main
    echo "End deployment"

Jetzt muss diese Datei noch ausführbar gemacht werden:

chmod +x hooks/post-receive

Zum Schluss muss noch unser git repository lokal geklont werden:

git clone ssh://ssh-wXXXXXX@deinedomain.de/www/htdocs/wXXXXX/edit_blog.git

Hugo Einrichten

Jetzt musst du nur noch in deinem lokalen Ordner edit_blog Hugo starten:

hugo new site meinblog

Viel Spaß mit deinem neuen Blog!