Publicar tu web gratis con GitHub Pages
Sube tu web a un repositorio de GitHub y publícala en una dirección github.io sin pagar alojamiento.
Has hecho tu primera página con HTML y CSS y quieres enseñarla. GitHub Pages publica gratis una web estática (HTML, CSS, JavaScript e imágenes) directamente desde un repositorio de GitHub, con HTTPS incluido. Es ideal para un portafolio, la web de un proyecto o tus prácticas de clase.
Qué necesitas y qué no permite
- Una cuenta de GitHub y tu web en un repositorio (si aún no sabes cómo, empieza por Git y GitHub desde cero).
- Según la documentación de GitHub, con el plan gratuito GitHub Free Pages funciona en repositorios públicos. Para publicar desde repositorios privados hace falta un plan de pago. Ten en cuenta que en un repositorio público todo el código es visible.
- Solo sirve archivos estáticos: no ejecuta PHP, Python ni bases de datos en el servidor. El JavaScript sí funciona, porque se ejecuta en el navegador de quien visita la página.

Dos tipos de sitio
| Tipo | Nombre del repositorio | Dirección resultante |
|---|---|---|
| Sitio de usuario | tu-usuario.github.io (en minúsculas) |
https://tu-usuario.github.io |
| Sitio de proyecto | Cualquiera, por ejemplo mi-web |
https://tu-usuario.github.io/mi-web/ |
Solo puedes tener un sitio de usuario, pero tantos de proyecto como repositorios.
Publicarla paso a paso
- Crea el repositorio en GitHub. Para un sitio de usuario, llámalo exactamente
tu-usuario.github.io. - Sube tus archivos. La página de inicio debe llamarse
index.html(GitHub Pages también aceptaindex.mdoREADME.mdcomo archivo de entrada). - En el repositorio, ve a Settings > Pages.
- En Build and deployment, elige como origen Deploy from a branch, la rama
mainy la carpeta/ (root)(o/docssi tienes la web en esa carpeta). Guarda. - Espera un par de minutos y recarga la página de ajustes: aparecerá la dirección de tu sitio.
A partir de ahí, cada vez que hagas git push con cambios, la web se actualiza sola.
Si tu proyecto necesita compilarse antes de publicarse (por ejemplo, un generador de webs estáticas o un proyecto de React), el origen debe ser un flujo de GitHub Actions que compile y publique el resultado. GitHub ofrece plantillas para los generadores más comunes.

Rutas que fallan al publicar
El error más común: en tu ordenador todo se ve bien y publicado faltan las imágenes o los estilos.
- Mayúsculas: Windows no distingue
Foto.jpgdefoto.jpg, pero el servidor sí. Usa siempre minúsculas en los nombres de archivo. - Rutas que empiezan por
/en un sitio de proyecto:/estilos.cssapunta atu-usuario.github.io/estilos.css, fuera de tu carpeta/mi-web/. Usa rutas relativas comoestilos.cssoimg/foto.jpg. - Espacios y tildes en nombres de archivo: evítalos (
mi-foto.jpg, nomi foto ñ.jpg).
Antes de publicar, revisa
- Que no subes datos privados: contraseñas, claves de API, tu DNI o documentos personales. En un repositorio público cualquiera puede leer el historial completo, incluso lo que hayas borrado después.
- El peso de las imágenes: una foto del móvil puede ocupar varios megas. Redúcela con nuestro compresor de imágenes para que la web cargue rápido.
- El icono de la pestaña (favicon): puedes crearlo con nuestro creador de iconos ICO.
- Los límites de uso: según GitHub, el sitio publicado no puede pasar de 1 GB, tiene un límite flexible de ancho de banda de 100 GB al mes y Pages no está pensado para tiendas online, negocios en línea ni para enviar información confidencial como contraseñas o datos de tarjetas. Para eso existen alojamientos específicos.
Si quieres usar tu propio dominio (por ejemplo, tunombre.es), GitHub Pages lo permite configurándolo en Settings > Pages > Custom domain y en el panel de tu proveedor de dominio, siguiendo la documentación de GitHub.
Fuentes consultadas
- ¿Qué es GitHub Pages? (GitHub Docs)
- Crear un sitio de GitHub Pages (GitHub Docs)
- Límites de GitHub Pages (GitHub Docs)
