Dzięki pokrewnemu pytaniu dowiedziałem się, że muszę „sprawdzić” oddział zdalny jako nowy oddział lokalny i podać nazwę nowego oddziału lokalnego.
git checkout -b newlocalbranchname origin/branch-name
Lub możesz zrobić:
git checkout -t origin/branch-name
Ten ostatni utworzy gałąź, która jest również ustawiona do śledzenia gałęzi zdalnej.
Aktualizacja: Minęło 5 lat, odkąd pierwotnie opublikowałem to pytanie. Wiele się nauczyłem i od tego czasu git się poprawił. Mój zwykły przepływ pracy jest teraz trochę inny.
Jeśli chcę pobrać zdalne gałęzie, po prostu uruchamiam:
git pull
Spowoduje to pobranie wszystkich zdalnych gałęzi i scalenie bieżącej gałęzi. Wyświetli wyjście, które wygląda mniej więcej tak:
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.
Teraz git wie o moim nowym my-bugfix-branch
. Aby przejść do tej gałęzi, mogę po prostu uruchomić:
git checkout my-bugfix-branch
Zwykle musiałbym utworzyć gałąź, zanim będę mógł to sprawdzić, ale w nowszych wersjach git jest wystarczająco mądry, aby wiedzieć, że chcesz pobrać lokalną kopię tej zdalnej gałęzi.
git branch --track XX origin/XX
. Twoje polecenie daje mi błąd.