Comandos elementales:
git help <command>
git clone <uri> namedir # clona un repositorio usando como nombre de directorio namedir.
git add * # añade recursivamente todos los archivos modificados o nuevos al stage.
git diff --staged #compara los cambios en el stage con el ultimo commit
git commit # muestra el diff en el editor
git rm --cached <file or regexp> #Remueve archivos añadidos al stage.Los deja en el directorio de trabajo
git rm <file> #borrar archivos de git.
git mv <file> <renamed_file> #cambia el nombre de un archivo en git
gitk --all # Herramienta gráfica para git
git commit --amend #Modificar el mensaje del último commit
git reflog # muestra un listado con todos los commit realizados como HEAD@{0} por ejemplo.
git reset --hard HEAD@{2}# vuelve al commit numero 2 de la lista entregada por git reflog.
git checkout -- <file> # Descartar cambios en el directorio de trabajo para el archivo file.
git add -i #añade archivos al stage de manera interactiva.
Comandos remotos
- git fetch origin # Descarga los objetos del servidor remoto
- git push origin <branch> #sube la rama <branch> al servidor remoto origin.
- git push origin master # sube los commits realizados en la branch actual a la branch master en el remoto origin al servidor remoto.
- git pull origin master #actualiza la branch actual con la rama master del servidor remoto origin.
Comandos de branches
- git branch <nombre-rama> #crea rama. Puntero al commit actual
- git branch <nombre-rama> <alguna-branch> #crea una rama putera a <alguna-branch>
- git checkout <nombre-rama> #cambiar a la rama especificada.
- git checkout -b <nombre-rama> #crea la rama <nombre-rama> y cambia a la rama creada.
- git merge <rama> # Mezcla la rama actual con <rama>
- git branch -d <rama> #elimina la rama
- git push origin --delete <branchName> # Elimina una rama del servidor remoto
- git mergetool #Herramienta gráfica para resolver conflictos
- git branch # lista ramas
- git branch -r # listar ramas remotas
- git branch -v # lista ramas mostrando último commit
- git branch --merged #lista ramas que han sido mezcladas con la actual. Si no tienen un *, pueden borrarse, ya que significa que se han incorporado los cambios en la rama actual.
- git branch --no-merged #lista ramas que no han sido incorporadas a la actual.
Comandos útiles
- git log #revisar los commit que existen en la branch actual
- git show <SHA-1> #ve los cambios realizados en un commit <SHA-1>, dado por el git log
- git blame <archivo> #muestra cada linea de código, mostrando quien modifico o agrego esa linea, la fecha y hora que la realizo el commit y el <sha-1> en el cual se agrego esa linea.