git checkout -b newLocalBranch
git push -u origin newLocalBranch
Uso de checkout
branch (cambiar de branch a branch):
git checkout remoteBranch
Para restaurar al archivo original (olvidar cambios):
git checkout path/local/file
Watering - traerte los cambios del branch origen a tu branch actual
git merge origin/master --no-commit
git commit -m"watering"
git push
Cherry pick - traerte los cambios de un commit a tu branch actual
1. git cherry-pick #hash
2. git push
Hacer un merge de un branch sobre master (o el origen de donde surgio el branch)
git checkout {upstream-branch-name}
git pull
git merge --squash --no-commit origin/{branch-to-merge}
git commit
mvn clean install
ant test.js.all
git push
Borrar un branch
git branch -rd origin/remoteBranchName (forzar a borrarlo cuando no tienes una copia localmente)
or
git branch -D localBranchName
git push origin :remoteBranchName
Esconder cambios con stash
ver lista de cambios escondidos: git stash list
ver cambios de un elemento de la lista: git stash show stash@{#}
esconder cambios como uno en la lista: git stash save "Some stash message here”
aplicar cambios al branch sin borrar de la lista: git stash apply stash@{#}
aplicar cambios y eliminarlos de la lista : git stash pop stash@{#}
borrar un elemento de la lista : git stash drop stash@{#}
borrar todos los elementos de la lista: git stash clear
Revertir cambios de un branch remoto (o ya pusheados)
git revert #exactlyTheRemoteHashOfInterest —no-commit
Resetear cambios del branch local (commiteados pero no pusheados)
1. buscar el #hash previo (no el hash que estas interesado en resetear, sino uno antes)
git log
2.1 resetear (todos los commits van a ser devueltos a la bandeja de unstage - antes de comitear)
git reset #localHash
2.2 O tambien puedes deshacer el commit N (con HEAD~N) y perder los cambios (con --hard)
git reset --hard HEAD~1
2.3. Si quieres deshacer cambios pero no perderlos (que por default usa --soft)
git reset HEAD~1