Come pubblicare il proprio sito jekyll su Github Pages gratis

In un post recente ho introdotto Jekyll e i suoi vantaggi rispetto a Wordpress. Brevemente, Jekyll è più sicuro, veloce e consente di poter ospitare gratuitamente il tuo sito su github pages. Oggi vedremo i passi da compiere per poter ospitare il tuo sito su github pages.

Prima di tutto, consiglio di installare Bundler per gestire le dipendenze delle Ruby Gems. Per installare Bundler, devi assicurarti di aver già installato Ruby. Per far ciò, apri un terminale, e digita il seguente comando per verificare di aver effettivamente installato Ruby.

$ ruby --version

Se ruby non è installato, o se la versione è più bassa della 2.0, installalo. Poi installa Bundler:

$ gem install bundler

Ovviamente dovrai poi aver installato git. Inizializza la tua repository git:

$ git init il-nome-del-mio-sito-jekyll
passa alla cartella appena creata
$ cd il-nome-del-mio-sito-jekyll

Crea un nuovo file chiamato Gemfile e copia incolla le seguenti righe:

source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins

Installa jekyll:

$ bundle install

A questo punto, se hai un sistema Mac potresti incorrere in un errore. Infatti, una delle gem da installare è nokogiri, che richiede accesso a libxml2. Purtroppo nelle nuove versioni di mac, questa libreria è inacessibile. Per ovviare al problema, si può installare nokogiri con i seguenti comandi:

  1. Nel caso di MacOs Sierra

    $ gem install nokogiri -- --use-system-libraries=true --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/libxml2/

  2. Con El Capitan

    gem install nokogiri -- --use-system-libraries=true --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/libxml2/

A questo punto puoi riprovare ad eseguire ‘bundle install’.

Se non hai ancora creato il tuo sito jekyll, puoi creare un sito di prova con il seguente comando:

$ bundle exec jekyll new . --force
Successivamente modifica il tuo Gemfile eliminando la seguente riga:
"jekyll", "3.2.1"

Rimuovi il simbolo # per togliere il commento alla seguente linea:

gem "github-pages", group :jekyll_plugins

Puoi modificare il sito editando i vari file creati. Ad esempio, se vuoi modificare header e footer, basta modificare header.html e footer.html contenuti nella cartella _includes. Se invece vuoi scrivere un post, crea un nuovo file sotto alla cartella _posts.

Per visualizzare il tuo sito, prima di pubblicarlo, esegui il seguente comando:

$ bundle exec jekyll serve

Pe Se vuoi che jekyll aggiorni il sito ogni volta che compi delle modifiche (che devono essere ovviamente salvate), ti basterà aggiungere al comando precedente la parola watch

$ bundle exec jekyll serve watch
Se invece vuoi che il tuo sito venga costruito rispetto ad un file di configurazione specifico, che chiamerai, come esempio, _config_dev.yml, dai il seguente comando:
$ bundle exec jekyll serve watch --config _config_dev.yml

Una volta che sei soddisfatto del tuo sito e vuoi pubblicarlo, inizia creando una repository su github chiamata username.github.io (dove per username si intende il tuo nome utente su github). Aggiungi questa repository come origin con il seguente comando:

$   git remote add origin https://github.com/user/username.github.io.git
Avendo cura di utilizzare il nome specifico della tua repository. Ora basta aggiungere tutti i file alla staging area di git, fare un commit ed un push ed il tuo sito sarà visibile all’indirizzo https://username.github.io

Risorse utili: