Nivel inicial9 min de lectura · Publicado el

Gist de GitHub: compartir código, notas y fragmentos

GitHub Gist: un fragmento de código con su enlace, su historial en Revisions y un candado tachado, porque un gist secreto no es privado. Gist secreto no es privadorubentejera.com script.shgist.github.com/…Revisions: 3secretono es privado
Cada gist es un fragmento con su propio enlace y su historial en Revisions, porque por dentro es un repositorio Git. El candado tachado avisa: un gist secreto no sale en búsquedas, pero lo ve cualquiera con el enlace.

Tienes un script de diez líneas que usas cada pocas semanas, una configuración que quieres pasar a un compañero o una nota con los comandos que siempre olvidas. Crear un repositorio para eso es matar moscas a cañonazos, y si lo dejas en una carpeta del escritorio, acaba perdido en el olvido.

Para eso sirve GitHub Gist: una plataforma para snippets, es decir, pequeños fragmentos de código reutilizables con una función concreta. Los guardas, los compartes con un enlace y no se pierden.

Un gist es un fragmento con su propio enlace: cualquiera con el enlace puede leerlo y guarda cada versión que has escrito.

Qué es GitHub Gist

GitHub Gist es un servicio gratuito de GitHub para guardar y compartir fragmentos de código y notas sin crear un repositorio, en gist.github.com. Lo que lo diferencia de pegar código en cualquier web:

  • Es Git por dentro. Cada gist es un repositorio, así que tiene historial de cambios (pestaña Revisions, con las diferencias entre versiones) y lo puedes clonar, modificar y subir con git push.
  • Admite varios ficheros. Un gist puede tener un script y su README, por ejemplo.
  • Resalta la sintaxis. Basta con poner la extensión en el nombre del fichero (.js, .py, .sh…).
  • Se comparte con un enlace, se puede descargar en ZIP, insertar en una web o fijar en tu perfil de GitHub.
  • Otros pueden bifurcarlo (fork) para hacer su versión, igual que un repositorio.

Gist público o secreto

Al crearlo eliges entre dos tipos:

Público

  • Aparece en Discover y en el buscador de gists
  • Cualquiera puede encontrarlo
  • No se puede convertir en secreto

Secreto

  • No aparece en búsquedas ni en Discover
  • Pero cualquiera con la URL puede verlo
  • Se puede hacer público más tarde
Un gist secreto no es privado: es un enlace sin anunciar.

Es como dejar la llave de casa debajo del felpudo: no la ve quien pasa por la calle, pero quien sabe dónde está, entra. Si el código tiene que ser privado de verdad, GitHub recomienda usar un repositorio privado. Y nunca pongas en un gist contraseñas, tokens ni ficheros .env, sea del tipo que sea. GitHub analiza también los gists secretos en busca de credenciales filtradas y avisa a los proveedores afectados, pero eso es una red de seguridad, no un permiso.

Cómo crear un gist desde la web

  1. Inicia sesión en GitHub y entra en gist.github.com (o pulsa el icono + de arriba a la derecha).
  2. Escribe una descripción (opcional, pero te ayudará a encontrarlo después).
  3. Pon el nombre del fichero con su extensión, por ejemplo liberar-puerto.sh.
  4. Pega el contenido. También puedes arrastrar un fichero de texto desde tu escritorio al editor.
  5. Pulsa Create secret gist o, en el desplegable del botón, elige Create public gist.

Por defecto, el botón crea un gist secreto.

Gist desde la terminal con gh gist

Si ya trabajas con la terminal, la CLI oficial de GitHub (gh) te ahorra abrir el navegador. La primera vez inicia sesión con gh auth login.

Crear un gist

# Gist secreto (es la opción por defecto)
gh gist create liberar-puerto.sh

# Gist público con descripción
gh gist create --public liberar-puerto.sh -d "Liberar un puerto ocupado en Linux"

# Varios ficheros en el mismo gist
gh gist create script.sh README.md

# Desde la salida de otro comando (con -f le das nombre al fichero)
history | tail -20 | gh gist create -f comandos-recientes.txt -

Al terminar, gh te devuelve la URL del gist. Con -w lo abre además en el navegador.

Ver, buscar y clonar

gh gist list                         # tus últimos 10 gists
gh gist list --filter puerto         # filtra por descripción o nombre de fichero
gh gist view <id>                    # muestra el contenido
gh gist view <id> --raw              # el contenido tal cual, sin formato
gh gist clone <id>                   # lo descarga como repositorio Git

Donde pone <id> vale el identificador del gist (el código largo del final de su URL) o la URL completa. Si no pones nada en view o edit, gh te deja elegir de una lista.

Editar y borrar

gh gist edit <id>                        # abre el fichero en tu editor
gh gist edit <id> --add notas.md         # añade un fichero
gh gist edit <id> --desc "Nueva descripción"
gh gist rename <id> viejo.sh nuevo.sh    # renombra un fichero
gh gist delete <id>                      # lo borra (pide confirmación)

Cada edición queda guardada como una revisión nueva del gist.

El enlace raw: gist.githubusercontent.com

El botón Raw de cada fichero abre el texto sin la página de GitHub alrededor. Esa dirección empieza por gist.githubusercontent.com y sirve para descargarlo con curl o leerlo desde otro programa:

curl -s https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/hello_world.rb

Fíjate en un detalle. El enlace que copias del botón Raw incluye un código largo después de /raw/: es el commit de esa versión concreta, así que siempre devuelve ese contenido aunque el gist cambie después. Si quitas ese código, como en el ejemplo, obtienes la última versión.

Insertar un gist en una web o un blog

En el desplegable Embed de un gist tienes la etiqueta lista para copiar. Tiene esta forma:

<script src="https://gist.github.com/octocat/6cad326836d38bd3a7ae.js"></script>

Funciona en cualquier página que permita JavaScript. Si el gist tiene varios ficheros y solo quieres mostrar uno, añade ?file=NOMBRE al final de la URL del script. Los ficheros GeoJSON se muestran como mapas.

En ese mismo desplegable están las opciones Clone via HTTPS y Clone via SSH, por si prefieres clonarlo con git clone en lugar de gh.

Para quién es y alternativas

Gist encaja si ya tienes cuenta de GitHub y quieres compartir algo pequeño con un enlace: un script, una configuración, la solución a un error que acabas de resolver. Es gratuito y no necesita instalar nada.

No encaja si el contenido tiene que ser privado de verdad: los gists no tienen esa opción. Tampoco si el fragmento ya tiene tests, dependencias o varias personas trabajando en él; eso es un proyecto.

Necesitas… Alternativa Por qué
Fragmentos privados GitLab Snippets Los snippets personales de GitLab pueden ser públicos o privados (solo los ves tú). También tienen varios ficheros, control de versiones e inserción en webs.
Código privado en GitHub Un repositorio privado Es lo que recomienda la propia documentación de GitHub cuando el código no debe verlo nadie más.

Gists e IA: el mismo criterio

Un gist es una forma cómoda de guardar fragmentos que funcionan: tu configuración, un script que has probado, una nota. Cuando ese fragmento viene de un asistente de IA, la regla es la misma que con el gist de un desconocido: se lee y se prueba antes de guardarlo o compartirlo. Así tu colección de gists es una chuleta fiable y no un cajón de código que nadie ha revisado. Es la idea de fondo de la IA Limpia.

Tu chuleta

Quiero… En la web En la terminal
Crear un gist Botón + en gist.github.com gh gist create fichero
Hacerlo público Desplegable Create public gist gh gist create --public fichero
Ver mis gists Tu página de gists gh gist list
Ver el contenido sin formato Botón Raw gh gist view <id> --raw
Descargarlo Download ZIP gh gist clone <id>
Insertarlo en una web Desplegable Embed —
Borrarlo Delete gh gist delete <id>

Si los fragmentos crecen y empiezan a ser un proyecto, pásalos a un repositorio normal. Para organizar el trabajo en ramas, mira Git Flow, y si prefieres una interfaz gráfica para Git, GitKraken.

Fuentes

Comprobado en noviembre de 2026 en la documentación oficial de GitHub: Creating gists (gists públicos y secretos, creación, inserción, GeoJSON, descarga y análisis de secretos), Forking and cloning gists y la API REST de gists. Alternativa comprobada en la documentación de GitLab Snippets (visibilidad pública o privada de los snippets personales). Los comandos de gh gist se han comprobado en la ayuda de GitHub CLI 2.102.0 (gh gist <comando> --help) y en el manual de gh.

Ejecutado con GitHub CLI 2.102.0, Git 2.53.0 y curl en Linux 7.0, sobre el gist público de ejemplo de la cuenta oficial octocat: gh gist view --files, gh gist view --raw, gh gist clone, la descarga raw con curl y la URL de inserción .js. Los comandos que crean, editan o borran gists (create, edit, rename, delete) no se han ejecutado para no modificar ninguna cuenta real: se muestran tal como los documenta la ayuda oficial.

El artículo original se inspiró en «Gist by GitHub: otra manera de compartir código», de Geeky Theory (en noviembre de 2026 la página no respondía).