Introducción a Git
Teoría: Directorio de trabajo
Cuando trabajamos con Git, es importante entender cómo rastrea los cambios de nuestros archivos. En esta lección, veremos cómo Git identifica modificaciones, cómo podemos verificar el estado de nuestro repositorio y qué hacer cuando eliminamos un archivo por error.
¿Qué sucede al eliminar un archivo?
Imaginemos que hemos clonado el repositorio codica-git. Dentro de la carpeta del proyecto, vemos los archivos que hemos agregado y una carpeta oculta llamada .git, que es donde Git almacena toda la información del repositorio.
Vamos a eliminar un archivo para ver cómo responde Git:
⏬ Salida del comando:
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: PEOPLE.md
no changes added to commit (use "git add" and/or "git commit -a")
PEOPLE.md fue eliminado y nos da opciones para restaurarlo o confirmar el cambio.
Pero, ¿cómo sabe Git que eliminamos un archivo? Para responder esto, exploremos cómo Git maneja el estado de los archivos.
Cómo Git rastrea los cambios
- El directorio de trabajo: donde editamos nuestros archivos.
- El repositorio Git (
.git): donde Git almacena un historial con los cambios confirmados (commits).
Cada vez que hacemos modificaciones en el directorio de trabajo, Git compara los archivos con la última versión guardada en el repositorio. Si detecta diferencias, nos lo indica con git status.
Restaurar un archivo eliminado
Si eliminamos un archivo por accidente, podemos restaurarlo a su última versión registrada con:
⏬ Salida esperada:
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
El archivo PEOPLE.md reaparece y todo vuelve a estar como en nuestro último commit.
Confirmar la eliminación de un archivo
Si, en cambio, queremos conservar el cambio (es decir, eliminar el archivo en el repositorio), seguimos este proceso:
⏬ Salida esperada:
[main e15afd2] remove PEOPLE.md
1 file changed, 1 deletion(-)
delete mode 100644 PEOPLE.md
✅ Nuestra confirmación de cambios (commit) registra la eliminación del archivo.
Un atajo: git rm
Git también nos ofrece un comando más eficiente para eliminar archivos y marcarlos como listos para el commit en un solo paso:
Este comando es equivalente a hacer:
Ahora, podemos hacer el commit:
Resumen
- Git rastrea los cambios comparando los archivos del directorio de trabajo con su última versión confirmada.
- Podemos verificar el estado del repositorio con
git status. - Si eliminamos un archivo por error, lo restauramos con
git restore <archivo>. - Para confirmar permanentemente la eliminación de un archivo, usamos
rm <archivo>, luegogit add <archivo>y finalmentegit commit. git rm <archivo>es un atajo que elimina un archivo y lo marca para commit en un solo paso.
Entender estos conceptos nos permite trabajar con más seguridad en nuestros proyectos y evitar pérdidas accidentales de información.
Completado
0 / 15
