mergulhao.info
Por Sylvestre Mergulhão
Sylvestre Mergulhão é programador web e fundador da HE:labs.
Veja também minhas palestras no Speaker Deck e me acompanhe no twitter @smergulhao.
Criar um novo branch remoto
git push origin origin:refs/heads/nome-do-branch
Começar a trabalhar localmente no branch remoto recém criado
git checkout --track -b nome-do-branch origin/nome-do-branch
Apagar um branch remoto do clone local (Na documentação do git eles são chamados de remote-tracking branches. No próximo fetch ou pull eles serão recriados.)
git branch -d -r origin/nome-do-branch
Apagar um branch do repositório remoto
git push origin :nome-do-branch // não esquecer dos ":" na frente do nome do branch
Apagar um branch local
git branch -d nome-do-branch
Refazer o último commit
Supondo que você fez um commit, mas por acaso esqueceu de fazer o git add em um arquivo. Faça o git add no arquivo e depois execute:
git commit --amend
O último commit será refeito com as alterações que você fez após ele.
Merge entre o master e um remote-tracking branch
git merge master origin/nome-do-branch
Salvar mudanças temporariamente para poder fazer um rebase ou pull
git stash save
Restaurar as mudanças salvas anteriormente
git stash apply
Limpar a lista de stash(mesmo após aplicar ele continua salvo)
git stash clear
Enviar as tags locais para o repositório remoto
git push --tags
Apagar uma tag remota
git push origin :refs/tags/nome-da-tag
Apagar todas as mudanças não comitadas até o momento (deixa o seu branch limpo, mas não apaga arquivos novos que nunca foram comitados)
git checkout -f
Fazer um ‘git rm’ arquivo por arquivo pode ser chato. E as vezes você não pode usar o ‘git add -u’ senão ele atinjirá arquivos que você não deseja
git ls-files --deleted | xargs git rm
Remover referência a branchs remotos já apagados
git remote prune origin