Explorador
Chuleta

Flujo básico del día a día

Crear o clonar un repo, revisar cambios, preparar y guardar commits, consultar el historial e ignorar archivos.

Actualizado el

En esta guía

Empezar un repositorio

git init                         # convierte la carpeta actual en un repo
git clone <url>                  # copia un repo remoto a una carpeta nueva
git clone <url> mi-carpeta       # igual, eligiendo el nombre de la carpeta

El ciclo

git status                       # qué cambió y en qué estado está
git add hola.sh                  # pasa un archivo a staging
git commit -m "Agrega script hola.sh"
git log --oneline                # historial resumido

Revisar antes de guardar

Comando Qué muestra
git status Archivos modificados, en staging y sin seguimiento
git status -sb Lo mismo, en formato corto
git diff Cambios que no están en staging
git diff --staged Cambios que entrarán en el próximo commit
git diff main..feature Diferencias entre dos ramas

Preparar cambios

Comando Qué hace
git add archivo Añade un archivo a staging
git add . Añade todo lo de la carpeta actual hacia abajo
git add -p Permite elegir fragmento por fragmento
git restore --staged archivo Saca un archivo de staging sin perder los cambios

Guardar

Comando Qué hace
git commit -m "Mensaje" Crea un commit con lo que hay en staging
git commit Abre el editor para escribir un mensaje largo
git commit -am "Mensaje" Añade los archivos ya seguidos y hace commit. No incluye archivos nuevos

Un buen mensaje dice qué cambia y por qué, en una línea de menos de 70 caracteres. Si hace falta más detalle, va en el cuerpo tras una línea en blanco.

Consultar el historial

Comando Qué muestra
git log --oneline Un commit por línea
git log --oneline --graph --all El grafo con todas las ramas
git log -p archivo Historial de un archivo con sus cambios
git log --author="Ana" --since="2 weeks ago" Filtrado por autor y fecha
git show <hash> El contenido de un commit
git blame archivo Quién cambió cada línea por última vez

Mover y borrar archivos

git mv viejo.txt nuevo.txt       # renombra y lo deja en staging
git rm archivo.txt               # borra el archivo y registra el borrado
git rm --cached archivo.txt      # deja de seguirlo sin borrarlo del disco

Ignorar archivos

El archivo .gitignore en la raíz del repo lista lo que Git no debe seguir.

node_modules/
dist/
.env
*.log
!importante.log
Patrón Ignora
carpeta/ Una carpeta completa
*.log Todos los archivos con esa extensión
/archivo Solo el de la raíz del repo
!archivo Excepción: no ignorar este

.gitignore no afecta a archivos que ya están en el historial. Para dejar de seguir uno hay que usar git rm --cached archivo y hacer commit.