Hoja de trucos de Git

1. Configuración Inicial

Comando Descripción
git config --global user.name "nombre" Establece el nombre de usuario.
git config --global user.email "email@example.com" Establece el correo electrónico.

2. Crear Repositorios

Comando Descripción
git init Inicializa un nuevo repositorio Git local.
git clone url Clona un repositorio remoto a local.

3. Cambios en Archivos

Comando Descripción
git add file Añade un archivo al área de staging.
git add . Añade todos los archivos modificados al área de staging.
git rm file Elimina un archivo del seguimiento y lo borra.
git mv old new Mueve o renombra un archivo o directorio.

4. Commits

Comando Descripción
git commit -m "mensaje" Realiza un commit con un mensaje.
git commit --amend Modifica el último commit.
git revert commit Revierte los cambios especificados por el ID de commit.

5. Branching y Merging

Comando Descripción
git branch Lista todas las ramas locales.
git branch name Crea una nueva rama.
git checkout name Cambia a la rama especificada.
git merge name Combina la rama especificada con la rama actual.
git branch -d name Elimina una rama.

6. Etiquetas

Comando Descripción
git tag Lista todas las etiquetas.
git tag name Crea una nueva etiqueta en el commit actual.
git tag -d name Elimina una etiqueta.

7. Revisión de Cambios

Comando Descripción
git status Muestra el estado del working directory.
git diff Muestra diferencias de archivos no stagged.
git diff --staged Muestra diferencias de archivos stagged.
git log Muestra el historial de commits.
git log --graph Muestra el historial de commits con un gráfico ASCII de la rama.

8. Deshacer Cambios

Comando Descripción
git checkout -- file Descarta los cambios en el directorio de trabajo.
git reset --hard Revierte el working directory para reflejar el último commit.
git reset commit Revierte al commit especificado, los cambios van a working directory.

9. Trabajo con Repositorios Remotos

Comando Descripción
git remote add origin url Agrega un repositorio remoto.
git fetch Descarga cambios del remoto sin integrar a la rama local.
git pull Descarga cambios del remoto y combina con la rama local.
git push Sube los cambios de la rama local al remoto.
git push origin --delete branch Elimina una rama en el remoto.

10. Stashing

Comando Descripción
git stash Guarda temporalmente los cambios modificados y limpio.
git stash apply Aplica los cambios guardados más recientemente.
git stash drop Elimina los cambios guardados más recientemente de la pila.

11. Avanzados y Misceláneos

Comando Descripción
git rebase branch Aplica los cambios de una rama sobre otra.
git cherry-pick commit Aplica los cambios de un commit específico sobre la rama actual.
git bisect start bad good Usa búsqueda binaria para encontrar el commit que introdujo un bug.

12. Configuración de Alias

Comando Descripción
git config --global alias.co checkout Crea un alias para un comando de Git.

13. Ignorar Archivos

Archivo Descripción
.gitignore Crea un archivo .gitignore para especificar archivos no rastreados.

14. Limpiar

Comando Descripción
git clean Elimina archivos no rastreados del directorio de trabajo.

15. Submódulos

Comando Descripción
git submodule add url path Añade un submódulo Git.
git submodule update Actualiza los submódulos.

16. Inspección y Comparación

Comando Descripción
git show commit Muestra información sobre un commit.
git blame file Muestra quién cambió qué línea en un archivo.

17. Patch

Comando Descripción
git format-patch commit Crea archivos de parche.
git apply patch Aplica un parche a los archivos.

18. Hooks

Hook Descripción
pre-commit, post-commit Scripts que se ejecutan antes o después de los commits.

19. Reflogs

Comando Descripción
git reflog Muestra un registro de las operaciones, útil para encontrar commits perdidos.

20. Limpieza y Optimización del Repositorio

Comando Descripción
git gc Limpia archivos innecesarios y optimiza el repositorio local.