Ir al contenido
Curso gratuito y abierto a todos. Las lecciones mejoran gracias a tus comentarios.
Idioma : ES

Git y versiones

En pruebasComprobada el 24/10/2026 (versión francesa)Traducida el 28/10/2026

Esta lección todavía está en pruebas: mejora con los comentarios de quienes la siguen. Si algo no está claro, hay que corregir la lección, no a ti.

Seguir esta lección con Claude Code

Con el compañero del curso instalado, abre Claude Code en tu carpeta de trabajo y escribe:

/formation-ia:suivre m12-l05 es

Lee esta lección actualizada en el sitio y te acompaña paso a paso, sin cambiar nada sin tu consentimiento. Instalar el compañero. Claude Code no está incluido en el plan gratuito: una suscripción de Claude compatible o una cuenta de Console facturada por uso para la terminal.

Al final de esta lección, sabrás

  • guardar una versión de tu herramienta en cada paso que funciona;
  • escribir un .gitignore para lo que nunca debe guardarse;
  • ver qué cambió desde la última versión;
  • volver a la última versión de un archivo, sabiendo lo que pierdes.

Por qué te interesa

Un agente modifica rápido, a veces demasiado. Con versiones guardadas, ninguna modificación es grave: sabes qué cambió y puedes volver atrás. En el módulo 5 descubriste Git para tu carpeta. Aquí lo conviertes en la costumbre de quien construye: una versión después de cada paso que funciona, y un archivo que dice lo que Git nunca debe guardar.

Antes de empezar

NecesitasClaude Code (app o terminal), en modo Manual, Git instalado (módulo 5, lección 6) y tu carpeta de proyecto
CostoGit es gratis; el agente requiere su suscripción (como mínimo Claude Pro: 18 € al mes sin IVA con facturación mensual, o 15 € al mes sin IVA con la suscripción anual de 180 € pagada por adelantado; precios mostrados en claude.com/pricing a fecha de 24/10/2026)
Duración60 minutos
RecordatorioGit guarda todo el historial: un secreto guardado una vez se queda en él (lección 6)

Entenderlo en 3 minutos

El ritmo: probar, comprobar, guardar. Una versión (un commit) después de cada paso que funciona, con un mensaje que dice qué cambió: «Agregado el botón Exportar», no «cambios».

El .gitignore enumera lo que Git no debe seguir: el archivo .env de los secretos, las copias de seguridad de datos, los archivos personales. Según la documentación de Git (24/10/2026), no afecta a los archivos que ya están bajo seguimiento: se configura antes de guardar esos archivos por primera vez.

Tres comandos que conviene conocer (el agente los ejecuta por ti; según la documentación de Claude Code, las formas de git que solo leen se ejecutan sin solicitud de permiso, pero las que modifican algo, como git restore, piden tu aprobación):

ComandoLo que hace
git statusSegún el libro de Git, es la herramienta principal para saber en qué estado están los archivos
git diffMuestra las modificaciones todavía no «preparadas» para la próxima versión (git diff HEAD muestra todo lo que cambió desde la última versión)
git restore <archivo>Devuelve el archivo al estado de la última versión guardada

Cuidado con git restore. El libro de Git advierte: es un comando peligroso; cualquier modificación local del archivo se pierde, Git lo reemplaza por la versión guardada más reciente. Lo que nunca se guardó con Git no se recupera con Git.

Hagámoslo juntos

1Paso 1: El .gitignore y luego la primera versión

Antes que nada: comprueba que Git está instalado (git --version en la terminal; si no, el módulo 5, lección 6, explica cómo instalarlo). Luego configura el nombre y la dirección que se guardarán en cada versión: se harán públicos si algún día publicas el proyecto (lección 7).

Según el libro oficial de Git, esto se hace una sola vez, con git config --global user.name "Tu nombre" y git config --global user.email tu.direccion@ejemplo.com: elige lo que aceptas mostrar.

En Claude Code, en tu carpeta de proyecto, en modo Manual:

Pon esta carpeta bajo Git: crea primero un archivo .gitignore que excluya el archivo .env y mis copias de seguridad de datos (solo los archivos de copia de seguridad de la herramienta, por ejemplo carnet-emprunts-*.json, no todos los archivos .json), y luego guarda una primera versión de los demás archivos, con un mensaje claro.
Después muéstrame el resultado de git status y de git log --oneline.

Lee cada solicitud de permiso antes de aceptar.

En nuestra prueba del 24/10/2026, con una solicitud que solo decía «los archivos de copia de seguridad .json», el agente creó el .gitignore, guardó la primera versión y luego advirtió que la regla *.json excluye todos los archivos .json, no solo las copias de seguridad: de ahí la redacción de arriba, que nombra las copias de seguridad. Después, un archivo .env y una copia de seguridad .json agregados a la carpeta no aparecían en git status: se ignoraban correctamente.

2Paso 2: Ver qué cambió

Haz una pequeña modificación en tu herramienta (lección 2) y luego:

Muéstrame qué cambió desde la última versión, en lenguaje sencillo. No modifiques nada.

Si la modificación funciona (repite las pruebas), guarda una nueva versión: «Guarda una versión con el mensaje: [lo que cambió].»

3Paso 3: Volver atrás

Para practicar, primero con seguridad: pídele al agente «Ejecuta git status y dime si hay modificaciones sin guardar». Si las hay, guarda primero una versión (paso 2). Mejor aún, haz el ejercicio en una copia de tu carpeta. Solo entonces, daña a propósito tu herramienta (por ejemplo, pide «reemplaza todo el contenido de [nombre].html por una sola línea: uy»). Luego:

Dañé [nombre].html por error. Vuelve a la última versión guardada de este archivo solamente, sin tocar los demás archivos. Dime qué hiciste.

En nuestra prueba, el agente miró primero git status y git diff, y luego ejecutó git restore -- prets.html (prets.html era el archivo de nuestra prueba: en tu caso, será el nombre de tu archivo): el archivo volvió a quedar idéntico a la versión guardada. Advirtió que la versión dañada, nunca guardada, no se podía recuperar.

Un caso particular: si el agente ya había «preparado» el archivo dañado para la próxima versión (comando git add), un simple git restore lo dejaría dañado, porque por defecto devuelve el archivo tal como está en esa preparación (según la documentación de Git). En ese caso, pide que lo restaure desde la última versión guardada: la forma completa es git restore --source=HEAD --staged --worktree <archivo>.

Ahora te toca a ti

  1. Pon tu proyecto bajo Git, con un .gitignore configurado antes de la primera vez que guardas.
  2. Durante una semana, guarda una versión después de cada paso que funciona, con un mensaje claro.
  3. Practica una vez cómo volver atrás en un archivo.
  4. Anota en tu diario los mensajes de tus versiones: son la historia de tu herramienta.

Comprobar

Funcionó si:

  • git log --oneline muestra varias versiones, con mensajes claros;
  • el .gitignore existe, y ni .env ni las copias de seguridad aparecen en git status;
  • sabes pedir qué cambió desde la última versión;
  • lograste volver atrás una vez, y sabes lo que eso te hace perder.

Errores frecuentes:

  • guardar una versión que no funciona;
  • configurar el .gitignore después de haber guardado .env;
  • mensajes como «cambios» o «prueba»;
  • ejecutar git restore sin saber que las modificaciones sin guardar se perderán.

Guardar y retomar

  • Antes de cada modificación que le pidas al agente: una versión. Después, si funciona: otra.
  • Git no sustituye a tus copias (módulo 5, lección 6): la carpeta .git está dentro de tu carpeta, en el mismo disco.

Para ir más lejos

opcional
  • Según la documentación de Git, para que un archivo que ya está bajo seguimiento deje de estarlo, hay que quitarlo del índice con git rm --cached y luego agregarlo al .gitignore. Para un secreto, eso no basta: se queda en las versiones anteriores (lección 6).

Palabras nuevas

4 palabras explicadas
PalabraLo que significa
Versión (commit)Un registro del estado de tus archivos, con un mensaje
.gitignoreLa lista de los archivos que Git no debe seguir
HistorialLa sucesión de todas tus versiones, con sus mensajes
Volver atrásDevolver un archivo al estado de una versión guardada

Comprueba lo que entendiste

3 preguntas, sin nota. Después de cada respuesta aparece una explicación.

1¿Cuándo guardas una versión (un commit)?
2Agregas .env al .gitignore, pero .env ya se había guardado en una versión. ¿Está protegido?
3Tu archivo está dañado, y no habías guardado nada desde la mañana. ¿Qué recupera git restore?

¿Y ahora qué?

Lección 6 · Secretos y datos personales: lo que nunca debe entrar en una página, en el historial de Git ni en una conversación.

Módulo 12:

✏️ Hacer los ejercicios

Mi espacio: tu progreso, tus ejercicios y tu última lección.

Fuentes y comprobaciones

5 fuentes

Fecha, versión, fuentes Redactada el 24/10/2026. Comprobaciones del 24/10/2026:

  • git status, herramienta principal para conocer el estado de los archivos: git-scm.com, libro de Git, «Enregistrer des modifications dans le dépôt» (en francés);
  • git restore, reemplazo por la última versión guardada, comando peligroso: git-scm.com, «Annuler des actions» (en francés);
  • .gitignore sin efecto sobre los archivos que ya están bajo seguimiento, git rm --cached: git-scm.com/docs/gitignore;
  • Git gratis: git-scm.com;
  • precio de Claude Pro: claude.com/pricing.

Los pasos 1 y 3 se hicieron realmente con Claude Code 2.1.310, solo con comandos git, en una carpeta de prueba aislada (informe de pruebas, T56). La solicitud del paso 1 se probó con su redacción original («los archivos de copia de seguridad .json»); la redacción actual, más precisa, no se ha vuelto a probar. Las sesiones de prueba con Claude Code se hicieron en modo no interactivo (claude -p), una sola vez cada una: lo que veas puede ser diferente (solicitudes de permiso, redacción, número de preguntas).

Fuentes comprobadas: