(Mostrar version de git, el — se refiere a que viene una palabra completa)
git —version
(Un solo - se refiere a abreviatura)
git commit -am
git config —global init.defaultBranch <name>
Soluciona error mensaje con CRLF al hacer commit
git config core.autocrlf true
Reinicia el proyecto al estado del ultimo commit
git checkout -- .
Commit y añadir el archivo en un solo comando (Solo archivos trackeados)
git commit -am ""
git log
Los cambios en el stage prevalecen si se le hace otro cambio y se hace un reset al archivo.
Por defecto Git no da seguimiento a directorios vacíos, debe añadirse dentro un archivo con el nombre .gitkeep
git status --short
Crear un alias
git config --global alias.s "git status --short"
Cambiar manualmente la configuración
git config --global -e
Corregir el mensaje del último commit
git commit --amend -m "Nuevo mensaje"
Soft
"Elimina" los commits posteriores al commit al que estas haciendo el reset
Conserva los cambios en el stage area
Conserva los cambios que tengas en tus archivos (working directory)
git reset --soft [HEAD^, hash]
git add .
git commit -m "Nuevo mensaje"
Mixed
"Elimina" los commits posteriores al commit al que estas haciendo el reset
Deshace los cambios en el stage area
Conserva los cambios que tengas en tus archivos (working directory)
git reset --mixed [hash]
Hard
"Elimina" los commits posteriores al commit al que estas haciendo el reset
Deshace los cambios en el stage area
Deshace los cambios que tengas en tus archivos (working directory)
git reset --hard [hash]
Ver log de todos los cambios realizados
git reflog
Crear tag sobre el último commit
git tag [nombre-del-tag]
// Eliminar tag
git tag -d [nombre-del-tag]
Crear tag con versión
git tag -a [v1.0.0] -m "Descripcion de versión 1.0.0"
//Crear tag sobre un commit especifico
git tag -a [v1.0.0] [7ab4912c/Hash] -m "Descripcion de versión 1.0.0"
Agregar cambios al stash
git stash
Mostrar listado de stashes
git stash list
Aplicar último stash
git stash pop
Eliminar último stash
git stash drop
Aplicar stash especifico
git stash apply stash@{0}
Guardar stash con mensaje
git stash save "Mensaje"
Nota del autor: Evitar utilizar rebase cuando los cambios ya esten en remoto
Hacer un rebase para actualizar rama (mandar los cambios de un commit despues del ultimo commit o el commit seleccionado de otra rama)
git checkout rama-cambios
git rebase master
git checkout master
git merge rama-cambios
Hacer un rebase interactivo para modificar commits
git rebase -i HEAD~4 (o numero de commits detrás del último)
Agregar url de origen remoto
Se pueden tener varios remotes en un mismo repositorio
git remote add [origin/nombreRemoto/etc] https://origen....
Ver remoto configurado
git remote -v
Enviar repositorio local al remoto (push)
git push -u [origin/nombreRemoto/etc] [master/main/rama]
# **-u:** Establece master por defecto y en el siguiente
# push no necesitamos especificar la rama