# Configurar ación
git config --global user.name "[nombre]"  # Configurar el nombre de usuario global de Git
git config --global user.email "[correo electrónico]"  # Configurar el correo electrónico global de Git

# Control de versiones   básico  
git status  
# Ver el estado actual del repositorio
git add [archivo]  # Añadir el archivo especificado a la zona de preparación
git​​​​​​​ add .  # Añadir todos los archivos modificados y nuevos a la zona de preparación
git commit -m "mensaje"  # Guardar los cambios realizados en la zona de preparación con el mensaje especificado
git commit -a -m " mensaje"  # Añadir y guardar todos los archivos modificados y nuevos con el mensaje especificado
git​​​​​​​ commit --amend -m "mensaje"  #  Modificar el mensaje del último commit
git diff [archivo]  # Ver las diferencias entre el archivo actual y el último commit
git log  # Ver el historial de commits
git log --oneline  # Ver el historial de commits en una línea por cada commit
git show [commit]  # Ver los detalles del commit especificado
git  checkout [commit]  # Moverse a un commit específico
git reset [archivo]  # Eliminar el archivo de la zona de preparación
git reset HEAD~1  # Deshacer el último commit y mover los cambios a la zona de preparación
git reset --hard [commit]  # Eliminar los cambios realizados y volver al commit especificado
git rm [archivo]  # Eliminar el archivo del directorio de trabajo y de la zona de preparación

# Trabajo con ramas
git
branch [nombre]  # Crear una nueva rama con el nombre especificado
git branch -v  # Ver las ramas locales y su último commit
git checkout [rama]  # Moverse a la rama especificada
git checkout -b [nombre]   # Crear y moverse a una nueva rama con el nombre especificado
git merge [rama]  # Fusionar la rama especificada con la rama actual
git branch -d [nombre]  # Eliminar la rama especificada

# Trabajo con repositorios remotos
git remote  add  [nombre] [URL]  # Agregar un repositorio remoto con el nombre especificado y la URL especificada
git remote -v  # Ver los repositorios remotos configurados
git fetch [remote]  # Obtener los cambios realizados en el repositorio remoto
git merge [remote]/[rama]  # Fusionar los cambios del repositorio remoto con la rama actual
git pull [remote] [rama]  # Obtener y fusionar los cambios del repositorio remoto en la rama actual
git push [remote] [rama]  # Enviar los cambios locales al repositorio remoto en la rama especificada
git push [remote] --delete [rama]  # Eliminar la rama especificada del repositorio remoto