Tabla de Referencia de Git
Manual completo de comandos Git, organizado por categorías para búsqueda rápida
Comandos Básicos(13)
Crear nuevo repositorio Git en directorio actual
Clonar repositorio remoto a local
Clonación superficial, solo último commit
Agregar archivo al área de staging
Agregar todos los cambios al staging
Confirmar cambios en staging
Modificar el último commit
Mostrar estado actual del repositorio
Mostrar cambios sin staging
Mostrar cambios en staging
Mostrar toda la configuración
Configurar nombre global
Configurar email global
Gestión de Ramas(14)
Listar todas las ramas locales
Listar todas las ramas (incluyendo remotas)
Crear nueva rama
Eliminar rama
Renombrar rama
Cambiar a una rama
Crear y cambiar a nueva rama
Cambiar a una rama (Git 2.23+)
Crear y cambiar a nueva rama (Git 2.23+)
Fusionar rama especificada con actual
Fusionar con commit de fusión
Rebase rama actual sobre rama especificada
Continuar rebase después de resolver conflictos
Aplicar commit específico a rama actual
Operaciones Remotas(10)
Mostrar detalles de repositorios remotos
Agregar repositorio remoto
Obtener último contenido del remoto
Obtener actualizaciones de todos los remotos
Obtener y fusionar rama remota
Obtener y rebase
Enviar a repositorio remoto
Forzar push (usar con precaución)
Push y establecer rama upstream
Eliminar rama remota
Deshacer Cambios(8)
Quitar archivo del staging
Deshacer último commit, mantener cambios
Deshacer commit y staging, mantener directorio
Deshacer commit y descartar todos los cambios
Deshacer commit (crea nuevo commit)
Restaurar archivo del directorio (Git 2.23+)
Quitar archivo del staging (Git 2.23+)
Eliminar archivos y directorios no trackeados
Gestión de Etiquetas(6)
Listar todas las etiquetas
Crear etiqueta ligera
Crear etiqueta anotada
Eliminar etiqueta local
Enviar etiqueta al remoto
Enviar todas las etiquetas al remoto
Ver Historia(7)
Mostrar historial de commits
Mostrar historial compacto
Mostrar historial de todas las ramas como gráfico
Mostrar detalles del commit
Mostrar historial de modificación por línea
Mostrar todo historial de operaciones
Iniciar búsqueda binaria del commit problemático
Stash(7)
Guardar cambios actuales
Guardar cambios con mensaje
Listar todos los stash
Aplicar y eliminar último stash
Aplicar stash sin eliminar
Eliminar último stash
Eliminar todos los stash
¿Qué es Git?
Git es un sistema de control de versiones distribuido creado por Linus Torvalds para gestionar el historial de código de proyectos. Soporta desarrollo colaborativo, rastrea cada cambio de código, y proporciona gestión de ramas y reversión de versiones.
Dominar los comandos Git es esencial para cada desarrollador. Esta tabla de referencia organiza los comandos más usados por categoría para búsqueda rápida y aprendizaje.
Cómo Usar
Haz clic en cualquier tarjeta de comando para copiarlo. Usa el buscador para encontrar comandos específicos. Haz clic en las categorías para filtrar por tipo.
Tips Comunes
Preguntas Frecuentes (FAQ)
Q: ¿Qué diferencia hay entre git pull y git fetch?
A: git fetch solo descarga actualizaciones remotas sin fusionar; git pull equivale a git fetch + git merge. Se recomienda usar fetch primero para revisar cambios antes de fusionar.
Q: ¿Cómo deshacer el último commit?
A: Usa git reset --soft HEAD~1 para deshacer commit pero mantener cambios; usa git reset --hard HEAD~1 para deshacer completamente y descartar cambios. Si ya fue enviado, usa git revert por seguridad.
Q: ¿Cómo resolver conflictos de fusión?
A: Edita manualmente archivos conflictivos para elegir contenido a mantener, luego git add para marcar como resuelto, finalmente git commit para completar fusión. Usa git mergetool para resolución visual.
Q: ¿Qué diferencia hay entre git merge y git rebase?
A: merge crea un commit de fusión preservando historial de ramas; rebase mueve commits al final de rama destino haciendo historial más lineal. Usa merge para ramas compartidas, rebase para ramas locales.
Q: ¿Cómo eliminar un archivo grande del historial?
A: Usa git filter-branch o BFG Repo-Cleaner. Nota que esto reescribe historial requiriendo push forzado.