Está tendo dificuldade em fazer o git rastrear a origem ao criar novos branches? Pense o todo
git checkout -b 'branchname' origin/branchname
parece um hack?
Acontece que sim e há um comando adequado para isso.
git checkout -t branchname
irá rastrear automaticamente o branch remoto se estiver em sua lista de origem local. Se não é, faça um
git fetch
antecipadamente. Agradecimentos a http://gitready.com/intermediate/2009/01/09/checkout-remote-tracked-branch.html