0Pricing
Frontend Academy · Lekcja

Zdalne repozytoria: push, pull, clone

Proszę połączyć lokalne repozytorium z GitHubem, wypychać commity do zdalnego repozytorium, pobierać zmiany od współpracowników oraz klonować istniejące repozytoria.

Zdalne repozytoria: push, pull, clone to bezpłatna lekcja Frontend Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Frontend Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Frontend Academy zawiera 4 lekcji w sumie.

Czym jest repozytorium zdalne?

Repozytorium zdalne to wersja repozytorium hostowana w internecie (GitHub, GitLab, Bitbucket). Współpraca z zespołem polega na wysyłaniu swoich commitów do repozytorium zdalnego i pobieraniu z niego commitów innych osób.

git clone — kopiowanie zdalnego repozytorium

git clone url tworzy lokalną kopię zdalnego repozytorium, wraz z całą historią i wszystkimi gałęziami. Repozytorium zdalne jest automatycznie dodawane pod nazwą origin.

git clone https://github.com/user/repo.git
git clone git@github.com:user/repo.git  # SSH

git remote — zarządzanie repozytoriami zdalnymi

git remote -v wyświetla skonfigurowane repozytoria zdalne. git remote add name url dodaje repozytorium zdalne. Zgodnie z konwencją główne repozytorium zdalne nosi nazwę origin.

git remote -v
# origin  git@github.com:user/repo.git (fetch)
# origin  git@github.com:user/repo.git (push)

git remote add origin https://github.com/user/repo.git

git push — wysyłanie commitów do repozytorium zdalnego

git push origin branchname przesyła lokalne commity do zdalnej gałęzi. Przy pierwszym wysłaniu nowej gałęzi trzeba za pomocą -u ustawić śledzenie gałęzi nadrzędnej.

git push origin main
git push -u origin feature/auth  # set upstream and push
git push                          # push to tracked remote (after -u)

git pull — pobieranie commitów z repozytorium zdalnego

git pull pobiera zmiany ze śledzonej gałęzi zdalnej i scala je z bieżącą gałęzią. Jest równoważne poleceniom git fetch + git merge.

git pull            # fetch and merge from tracked upstream
git pull origin main # explicit remote and branch

git fetch — pobieranie bez scalania

git fetch pobiera wszystkie zmiany z repozytoriów zdalnych bez modyfikowania katalogu roboczego. Używaj go, aby sprawdzić, jakie zmiany zostały zacommitowane przez inne osoby, zanim zdecydujesz, jak je zintegrować.

git fetch origin
git log origin/main --oneline  # inspect remote commits
git merge origin/main           # integrate when ready

Konfigurowanie kluczy SSH

GitHub wymaga uwierzytelniania. W przypadku HTTPS używa się nazwy użytkownika i tokenu. Klucze SSH są wygodniejsze: należy wygenerować parę kluczy, dodać klucz publiczny do GitHub i uwierzytelniać się automatycznie.

ssh-keygen -t ed25519 -C "your@email.com"
# Public key:
cat ~/.ssh/id_ed25519.pub
# Copy this into GitHub Settings → SSH Keys

Upstream a origin

origin to fork użytkownika. upstream to oryginalne repozytorium. Podczas współtworzenia oprogramowania open source stosuje się następujący schemat: fork → clone → dodanie repozytorium zdalnego upstream → pobieranie zmian z upstream, aby zachować aktualność.

git remote add upstream https://github.com/original/repo.git
git fetch upstream
git merge upstream/main

Wymuszone wysyłanie — zachowaj najwyższą ostrożność

git push --force nadpisuje historię zdalnej gałęzi. Nigdy nie wymuszaj wysyłania do main ani do współdzielonych gałęzi — powoduje to przepisanie historii dla wszystkich osób. Jest to bezpieczne w przypadku zrebase’owanych osobistych gałęzi funkcjonalności przed sprawdzeniem PR.

git pull --rebase

git pull --rebase stosuje lokalne commity na podstawie pobranych commitów zamiast tworzyć commit scalający. Daje to czystszą, liniową historię. Wiele zespołów ustawia tę strategię jako domyślną dla pull.

git pull --rebase origin main

# Set as default:
git config --global pull.rebase true

.git/config

Lokalna konfiguracja repozytorium Git znajduje się w pliku .git/config. Przechowuje on adresy URL repozytoriów zdalnych i śledzone gałęzie. Plik ~/.gitconfig przechowuje ustawienia globalne, takie jak imię i adres e-mail.

# ~/.gitconfig
[user]
  name = Alice Developer
  email = alice@example.com
[core]
  editor = code --wait

Szybkie sprawdzenie

Co robi polecenie git push -u origin feature/auth?

Podsumowanie: repozytoria zdalne

git clone kopiuje zdalne repozytorium lokalnie. git remote zarządza adresami URL repozytoriów zdalnych. git push wysyła commity. git pull pobiera zmiany i scala je. git fetch pobiera zmiany bez scalania. Używaj SSH do bezpiecznego uwierzytelniania. origin to repozytorium zdalne użytkownika, a upstream to oryginalne repozytorium w projektach open source. Wymuszonego wysyłania używaj wyłącznie na osobistych, niesprawdzonych gałęziach.

Często zadawane pytania

Czy lekcja „Zdalne repozytoria: push, pull, clone” jest bezpłatna?

Tak — pełny tekst „Zdalne repozytoria: push, pull, clone” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Frontend Academy, przejdź na CoddyKit PRO. Kurs Frontend Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Zdalne repozytoria: push, pull, clone”?

Proszę połączyć lokalne repozytorium z GitHubem, wypychać commity do zdalnego repozytorium, pobierać zmiany od współpracowników oraz klonować istniejące repozytoria. Ćwiczysz Frontend Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Frontend Academy?

Nie wymagamy żadnego doświadczenia. Frontend Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Zdalne repozytoria: push, pull, clone”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Frontend Academy?

Tak. Każda lekcja Frontend Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. git init, add, commit i status
  2. Rozgałęzianie: branch, checkout, merge
  3. Zdalne repozytoria: push, pull, clone
  4. Praca z pull requestami na GitHubie
← Powrót do Frontend Academy