Configurar Jekyll para trabajar con las páginas de Github

El motivo de lo que comentaba en la entrada anterior iba enfocado a preparar un entorno de prueba para trabajar con Jekyll, un generador de contenido estático a partir de ficheros de texto. En un principio su uso está orientado a la generación de blogs de forma rápida sin necesidad de bases de datos o sistemas más complejos como puede ser WordPress. En mi caso, estaba interesado en testear los problemas que estaba teniendo haciendo uso de las páginas de Github, servicio que ofrecen de forma gratuita para alojar contenido web estático que se aloja en un rama específica dentro de tu repositorio de GitHub. En mi caso, el de Azure for Beginners

Los pasos previos que necesitaremos realizar son:

  1. Instalar un intérprete de JavaScript, si no a la hora de generar nuestro sitio con Jekyll fallará.
    sudo apt-get install nodejs
  2. Instalar el framework de Ruby ya que Jekyll es una gema de Ruby.
    sudo apt-get install ruby
  3. Instalar las herramientas de desarrollo necesarias para los procesos de compilación a la hora de instalar la gema de Jekyll
    sudo apt-get build-essential ruby-dev
  4. Finalmente instalar la gema de Jekyll
    sudo gem install Jekyll

Una vez acabado el proceso tendremos ya nuestro entorno de pruebas de Jekyll. Es posible probar que todo funciona correctamente creando un sitio por defecto como sugieren en la documentación oficial.

~ $ gem install jekyll
~ $ jekyll new myblog
~ $ cd myblog

Tras acceder a la plantilla generada por Jekyll ejecutamos el comando necesario para comenzar a servir las páginas:
~/myblog $ jekyll serve

La salida del comando nos indica que tenemos que cargar en nuestro navegador la URL: http://localhost:4000 para visualizarlo.

jeckyll-install-step-2

Haciéndole caso podemos ver que nuestro sitio está listo:

jeckyll-install-step-1

Una vez probado que todo está correcto, podremos utilizar Git para clonar nuestro repositorio y comenzar a trabajar con la rama de gh-pages, para que los cambios que hagamos se reflejen en nuestro sitio al hacer un push

Consejo, si quieres que tu rama de gh-pages esté sincronizada con la master puedes añadir la línea destacada a continuación a tu fichero de configuración de git, .git/config, en la sección de origin.

[remote "origin"]
url = https://github.com/keyonir/azure-for-beginners.git
fetch = +refs/heads/*:refs/remotes/origin/*
push = refs/heads/master:refs/heads/gh-pages < ----------------
push = refs/heads/master:refs/heads/master

De esta manera, cada vez que ejecutes un push al repositorio, los cambios se aplicarán a ambas ramas.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.