Git: ustawienie gałęzi upstream
Ostatnia aktualizacja
Upstream gałęzi to zdalna gałąź, którą ona śledzi. Gdy jest ustawiony, zwykłe git push i git pull wiedzą, dokąd wysyłać commity i skąd je pobierać, bez podawania za każdym razem repozytorium zdalnego i gałęzi. Zwykle ustawiasz go przy pierwszym push z -u albo później przez git branch --set-upstream-to.
Wypróbuj te polecenia w terminalu online: prawdziwa powłoka w przeglądarce, bez żadnej instalacji.
Składnia
| Polecenie | Co robi |
|---|---|
git push -u origin feature | Push i ustawienie upstreamu w jednym kroku |
git branch --set-upstream-to=origin/feature | Ustawia upstream dla bieżącej gałęzi |
git branch -u origin/feature feature | Ustawia upstream dla wskazanej gałęzi |
git branch -vv | Pokazuje każdą gałąź i jej upstream |
Typowe przypadki
| Cel | Polecenie |
|---|---|
| Ustawić upstream przy pierwszym push | git push -u origin feature |
| Ustawić upstream dla istniejącej gałęzi | git branch --set-upstream-to=origin/feature |
| Sprawdzić, jaki upstream jest ustawiony | git branch -vv |
Najczęstsze pytania o ustawianie upstreamu
Co daje ustawienie gałęzi upstream?
Łączy twoją lokalną gałąź z konkretną zdalną gałęzią. Od tej chwili
git push i git pull na tej gałęzi wiedzą, którego repozytorium zdalnego i gałęzi użyć, więc możesz je uruchamiać bez argumentów. Git pokazuje też w git status, o ile jesteś przed upstreamem albo za nim.Jak ustawić gałąź upstream?
Najprościej przy pierwszym push:
git push -u origin <branch> wypycha i od razu ustawia upstream. Dla gałęzi, która już istnieje w repozytorium zdalnym, użyj git branch --set-upstream-to=origin/<branch>, będąc na tej gałęzi.Jak sprawdzić upstream gałęzi?
Uruchom
git branch -vv. Wyświetla lokalne gałęzie, każdą z adnotacją o jej upstreamie (np. [origin/feature]) i o tym, czy jest przed nim, czy za nim. Gałęzie bez upstreamu nie mają nic w nawiasach.Dlaczego git push prosi o ustawienie upstreamu?
Bo bieżąca gałąź nie ma skonfigurowanego upstreamu, więc Git nie wie, dokąd wypychać. Uruchom raz
git push -u origin <branch>, żeby go ustawić; kolejne push wymagają już tylko git push.Czy mogę to przećwiczyć online?
Tak. Otwórz terminal online i uruchom te polecenia w prawdziwej powłoce w przeglądarce, bez żadnej instalacji. Darmowy interaktywny kurs Git w Coddy też krok po kroku omawia pracę z repozytoriami zdalnymi.