git
Guarda cambios en archivos a lo largo del tiempo y trabaja en equipo con versiones.
Es un sistema de control de versiones: guarda el historial de los cambios de tu proyecto, te deja volver a versiones anteriores, crear ramas para probar ideas y trabajar en equipo sin pisar el trabajo de otros. Es lo que está detrás de GitHub y GitLab. Si no lo tienes instalado: sudo apt install git.
git [comando] [opciones]git reset --hard, git clean -fd y forzar push (--force) pueden perder cambios irreversiblemente. Nunca hagas reset --hard sin guardar lo importante (commit o stash).
Despiece
5 ejemplosIniciar un repositorio
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | git | Comando | Sistema de control de versiones. |
| 2 | init | Valor | Inicializa un nuevo repositorio git en la carpeta actual. |
Crea una carpeta oculta .git que guarda todo el historial del proyecto.
Ver estado del repositorio
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | git | Comando | Sistema de control de versiones. |
| 2 | status | Valor | Muestra archivos modificados, nuevos o listos para commit. |
Ves qué archivos cambiaron, cuáles están en staging (preparados) y cuáles no.
Agregar archivos al staging
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | git | Comando | Sistema de control de versiones. |
| 2 | add | Valor | Prepara archivos para guardar en el historial. |
| 3 | index.html | Argumento | Archivo a preparar. |
| 4 | style.css | Argumento | Otro archivo a preparar. |
Los archivos quedan listos para hacer commit (en el área de staging).
Guardar cambios con mensaje
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | git | Comando | Sistema de control de versiones. |
| 2 | commit | Valor | Guarda los cambios preparados en el historial. |
| 3 | -m | Opción | Añade un mensaje corto describiendo el cambio. |
| 4 | "Agrega página de inicio" | Valor | Descripción clara de lo que hiciste. |
Crea un punto de guardado (commit) con ese mensaje. Ahora puedes volver a este estado si algo sale mal.
Ver historial de cambios
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | git | Comando | Sistema de control de versiones. |
| 2 | log | Valor | Muestra el historial de commits. |
| 3 | --oneline | Opción | Muestra cada commit en una sola línea. |
| 4 | -5 | Opción | Muestra solo los últimos 5 commits. |
Ves los últimos 5 commits con su ID corto y mensaje.
Opciones
Las que sí vas a usar| Opción | Qué hace |
|---|---|
| -C | Ejecuta git en otra carpeta sin cambiar de directorio. |
| -q--quiet | Reduce la salida a lo mínimo. |
| --no-pager | Muestra salida completa sin paginador (útil para scripts). |
Fallas comunes
| Falla | Remedio |
|---|---|
| Agregar archivos sensibles (contraseñas, claves). | Antes de git add, revisa con git status. Usa .gitignore para excluir archivos con secretos. |
| Perder cambios con reset --hard. | Nunca uses git reset --hard sin respaldo. Usa git stash para guardar cambios temporalmente. |
| No configurar nombre/email. | Git necesita identidad: git config --global user.name "Tu Nombre" y git config --global user.email "tu@correo.com". |
| Push forzado (--force) sin cuidado. | Evita --force en ramas compartidas. Usa --force-with-lease para ser más seguro. |
Preguntas frecuentes
- ¿Qué es Git?
- Git es un sistema de control de versiones. Guarda el historial de cambios en archivos y facilita trabajar en equipo.
- ¿Cuál es la diferencia entre git add y git commit?
- git add prepara archivos (los pone en staging). git commit guarda esos cambios preparados en el historial con un mensaje.
- ¿Qué hace git init?
- Inicializa un repositorio Git nuevo en la carpeta actual, creando la carpeta oculta .git.
- ¿Cómo veo qué cambié?
- Con git status ves archivos modificados/nuevos. Con git diff ves exactamente qué líneas cambiaron.
- ¿Qué es un commit?
- Un commit es un punto de guardado en el historial. Contiene qué cambió, cuándo, quién lo hizo y un mensaje explicando el cambio.