Git Para No-Programadores: Versiona Tu Vida Digital en 30 Minutos
Lo mínimo necesario de Git para versionar documentos, notas, y proyectos sin ser ingeniero de software. Commit, push, pull, y restauración de versiones anteriores. El seguro de vida para tu trabajo intelectual.
Git tiene un problema de marketing. Se presenta como “sistema de control de versiones para desarrolladores”, y eso hace que escritores, analistas, diseñadores, consultores y cualquier profesional del conocimiento asuma que no es para ellos. Error.
Git es la herramienta más infrautilizada por los no-programadores. Te permite viajar en el tiempo dentro de tus archivos: ver qué cambió, cuándo cambió, quién lo cambió, y, lo más importante, deshacer cualquier cambio con un solo comando. Es el seguro de vida para tu trabajo intelectual.
Si alguna vez has perdido un documento porque sobrescribiste la versión buena con una mala, has pasado horas buscando “la versión del jueves que tenía ese párrafo que borré”, o has intentado colaborar en un documento con 5 personas usando “documento_final_v3_revisado_Marta (2).docx”, Git es para ti.
Qué Es Git (Versión Para Humanos)
Imagina que cada vez que guardas un archivo, en lugar de sobrescribir la versión anterior, creas una fotografía instantánea (un commit) del estado de todos tus archivos en ese momento. Esa fotografía se almacena con una etiqueta de fecha, hora y un mensaje tuyo explicando qué cambió.
Ahora imagina que puedes:
- Ver todas las fotografías que has tomado, en orden cronológico
- Viajar a cualquier fotografía anterior y restaurar tus archivos exactamente como estaban en ese momento
- Crear líneas temporales alternativas (ramas) para experimentar sin miedo a romper nada
- Sincronizar todas tus fotografías con una copia de seguridad en Internet (GitHub, GitLab) por si tu ordenador muere
Esto es Git: un sistema de archivos con memoria fotográfica.
Los 3 Conceptos Que Necesitas
-
Repositorio (repo): Una carpeta normal de tu ordenador que tiene activada la “memoria fotográfica”. Cuando inicializas un repo con
git init, Git empieza a vigilar esa carpeta y todo su contenido. -
Commit: Una fotografía instantánea del estado de todos los archivos en un momento dado. Cada commit tiene un identificador único, un autor, una fecha y un mensaje. Piensa en ello como “guardar partida” en un videojuego.
-
Remote: Una copia de tu repositorio en un servidor remoto (GitHub, GitLab). Es tu copia de seguridad externa. Si tu ordenador se pierde, se rompe o te lo roban, clonas el remote en otro ordenador y tienes todos tus archivos, con todo su historial de versiones, de vuelta.
Los 5 Comandos Que Realmente Necesitas
El manual de Git tiene más de 150 comandos. Para el 95% de los casos de uso de un no-programador, solo necesitas 5. Apréndelos en 30 minutos y no necesitarás nada más durante meses.
1. git init: Activar la Memoria en una Carpeta
# Entra en la carpeta que quieres versionar
cd ~/Documents/MisProyectos
# Activa Git en esta carpeta
git init
Cuándo usarlo: Una sola vez, al crear un nuevo proyecto que quieres versionar.
Qué hace: Crea una carpeta oculta .git dentro de tu proyecto donde Git guarda todo el historial de versiones. No modifica tus archivos. No los sube a ningún sitio.
2. git add.: Seleccionar Qué Guardar en Esta Fotografía
# Añade todos los archivos modificados o nuevos a la "zona de fotografía"
git add .
# O añade solo un archivo específico
git add informe-final.md
Cuándo usarlo: Antes de cada commit. Normalmente git add. (con el punto) es suficiente.
Qué hace: Marca los archivos que quieres incluir en la próxima fotografía (commit). El punto significa “todo lo que ha cambiado en esta carpeta y subcarpetas”.
3. git commit -m "mensaje": Tomar la Fotografía
# Toma la fotografía con una descripción de lo que cambió
git commit -m "Añadida sección de conclusiones al informe"
Cuándo usarlo: Cada vez que termines una unidad de trabajo con sentido (un párrafo, una sección, una corrección). Idealmente al final de cada sesión de trabajo, o cada 30-60 minutos.
Qué hace: Crea una fotografía instantánea del estado actual de los archivos que marcaste con git add. Guarda quién hizo el commit, cuándo, y el mensaje descriptivo.
Regla de oro para mensajes de commit: Completa esta frase: “Este commit…” → “…añade la sección de conclusiones”. Si tu mensaje no puede completar esa frase con claridad, el commit es demasiado grande (contiene demasiados cambios sin relación).
4. git push: Subir la Copia de Seguridad a Internet
# Envía tus commits locales al servidor remoto (GitHub)
git push
Cuándo usarlo: Al final de cada sesión de trabajo. O al menos una vez al día.
Qué hace: Sincroniza tu historial local con el servidor remoto. Si tu ordenador muere 5 minutos después de hacer push, no has perdido nada. Si no has hecho push en 3 días y tu ordenador muere, has perdido 3 días de trabajo.
5. git pull: Traer Cambios del Servidor a Tu Ordenador
# Descarga los cambios que haya en el servidor remoto
git pull
Cuándo usarlo: Al empezar a trabajar en un ordenador distinto, o si compartes el repositorio con otra persona.
Qué hace: Descarga los commits que estén en el servidor remoto pero no en tu ordenador y los aplica a tus archivos. Si trabajas solo desde un ordenador, casi nunca necesitarás este comando.
Tu Flujo de Trabajo Diario en 2 Minutos
Al final de tu sesión de trabajo:
# 1. Añadir todos los cambios
git add .
# 2. Crear un commit con un mensaje descriptivo
git commit -m "Terminada revisión del capítulo 3"
# 3. Subir al servidor remoto (copia de seguridad)
git push
Tres comandos. Dos minutos. Tranquilidad absoluta de que no vas a perder tu trabajo.
GitHub Desktop: Git Sin Terminal
Si la terminal te intimida, GitHub Desktop es una aplicación gratuita (Windows y Mac) que hace exactamente lo mismo con una interfaz gráfica:
No necesitas tocar la terminal si no quieres. Pero conocer los 5 comandos de arriba te da una comprensión más profunda de lo que GitHub Desktop está haciendo por ti.
Casos de Uso Prácticos Para No-Programadores
Versionar tu Vault de Obsidian
Tu Segundo Cerebro contiene todo tu conocimiento, notas de investigación, proyectos y escritos. Si algo le pasa a esa carpeta, pierdes meses o años de trabajo intelectual.
cd ~/Documents/ObsidianVault
git init
git add .
git commit -m "Estado inicial del vault"
# Configurar remote en GitHub y hacer push
A partir de ahí, al final de cada día: git add. && git commit -m "Notas del día" && git push.
Seguimiento de Versiones de un Documento Largo
Estás escribiendo un informe de 50 páginas. Cada día avanzas una sección. Con Git:
# Día 1
git commit -m "Estructura inicial y sección de introducción"
# Día 5
git commit -m "Completada sección de metodología. 12 páginas."
# Día 12 — tu jefe te pide recuperar la versión del día 5
git log --oneline # Ves el historial de commits
# Encuentras el commit del día 5. Copias su hash.
git checkout <hash-del-commit> -- informe.docx
# El archivo vuelve exactamente a como estaba el día 5.
Recuperar un Archivo Borrado
Borraste accidentalmente un archivo importante. Con Git:
# Ves el historial de cambios recientes
git log --oneline -5
# Restauras el archivo desde el último commit donde existía
git checkout HEAD~1 -- nombre-del-archivo-borrado.md
El archivo vuelve a aparecer en tu carpeta, exactamente como estaba en el commit anterior.
Lo Que NO Necesitas Aprender (Todavía)
El 90% de los tutoriales de Git te abruman con conceptos que no necesitas para empezar. Ignora esto por ahora:
- Branches (ramas): Útiles cuando trabajas con otras personas en el mismo código. Para documentos personales, la rama por defecto (
main) es suficiente. - Merge y rebase: Formas de combinar cambios de distintas ramas. No los necesitas si solo usas
main. - Stash: Guardado temporal. No lo necesitas para tu flujo básico.
- Cherry-pick, bisect, reflog: Herramientas avanzadas para desarrolladores.
Concéntrate en los 5 comandos. Cuando los domines, explora los siguientes 3 (que serán útiles eventualmente): git status (ver qué ha cambiado), git log (ver el historial), git diff (ver exactamente qué líneas cambiaron).
Configuración Inicial (3 Minutos, Una Sola Vez)
Antes de empezar a usar Git, configura tu identidad:
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
Esto asocia tu nombre a cada commit que hagas. Solo necesitas hacerlo una vez.
“Git es para cualquiera que produzca trabajo intelectual en formato digital y valore no perderlo; los programadores son solo el primer caso de uso. Es decir, para todo el mundo.”