Graças a uma pergunta relacionada , descobri que preciso "efetuar check-out" da filial remota como uma nova filial local e especificar um novo nome de filial local.
git checkout -b newlocalbranchname origin/branch-name
Ou você pode fazer:
git checkout -t origin/branch-name
Este último criará uma ramificação que também está definida para rastrear a ramificação remota.
Atualização: Faz cinco anos desde que postei originalmente esta pergunta. Eu aprendi muito e o git melhorou desde então. Meu fluxo de trabalho habitual é um pouco diferente agora.
Se eu quiser buscar as ramificações remotas, simplesmente corro:
git pull
Isso buscará todas as ramificações remotas e mesclará a ramificação atual. Ele exibirá uma saída parecida com esta:
From github.com:andrewhavens/example-project
dbd07ad..4316d29 master -> origin/master
* [new branch] production -> origin/production
* [new branch] my-bugfix-branch -> origin/my-bugfix-branch
First, rewinding head to replay your work on top of it...
Fast-forwarded master to 4316d296c55ac2e13992a22161fc327944bcf5b8.
Agora o git sabe sobre o meu novo my-bugfix-branch
. Para mudar para este ramo, posso simplesmente executar:
git checkout my-bugfix-branch
Normalmente, eu precisaria criar a ramificação antes de poder fazer o check-out, mas nas versões mais recentes do git, é inteligente o suficiente saber que você deseja fazer check - out de uma cópia local dessa ramificação remota.
git branch --track XX origin/XX
. Seu comando me dá um erro.