Ho bisogno spesso di effettuare questa operazione quando configuro o sincronizzo le mie diverse macchine, e sembra che mi dimentico il comando ogni volta. Supponiamo di avere più di un branch sul remote, e di volerle scaricare sul repository locale:

Guardando le informazioni sul remote dovrebbero essere qualcosa di simile a:
$ git remote show origin
* remote origin
URL: *************
Remote branch merged with 'git pull'
while on branch master
master
Tracked remote branches
haml master
Fortunatamente, la sintassi del comando è abbastanza semplice:
git checkout --track -b <local branch> <remote>/<tracked branch>
Quindi nel mio caso, Userò il comando:
git checkout --track -b haml origin/haml
È possibile utilizzare una versione semplificata del comando:
git checkout -t origin/haml