Onde eu trabalho, é muito comum alternar entre os projetos e, com frequência, um projeto terá mudado um pouco desde a última vez que estive lá. Isso significa que preciso sincronizar meu repositório local com o remoto antes de criar meu branch de recurso. Quero ter certeza de que estou obtendo uma boa construção limpa e não tenho nenhum artefatos antigos por aí, atrapalhando as obras.
Então, eu me certifico de limpar os arquivos desnecessários e redefinir meu branch para um bom estado. Eu me peguei fazendo isso com tanta frequência que criei um alias em meu .gitconfig para fazer isso por mim.
[alias]
nuke = !git clean -fdx & git reset head --hard & git pull
Agora, na raiz do projeto, digito:
git nuke
E tenho certeza de que o que tenho localmente é exatamente o que está no repositório remoto e posso criar meu branch de recursos e começar a trabalhar.
HTH,
Mike