Git to system kontroli wersji, który umożliwia śledzenie zmian w kodzie, ułatwiając współpracę w zespołach programistycznych oraz zarządzanie różnymi wersjami projektu. Działa lokalnie na komputerze i pozwala między innymi na łatwe odzyskiwanie wcześniejszych wersji kodu.
GitHub to platforma do hostowania zdalnych repozytoriów Git, która umożliwia programistom współpracę, przeglądanie kodu i zarządzanie projektami w chmurze. Alternatywami dla GitHub są m.in. GitLab, Bitbucket czy SourceForge.
Podstawowe pojęcia
- Repository (repozytorium) – Miejsce, gdzie przechowywane są wszystkie wersje projektu. Może być lokalne (na komputerze) lub zdalne (na serwerze).
- Commit – Zatwierdzenie zmian w repozytorium. Każdy commit zapisuje migawkę stanu projektu w danym momencie.
- Branch (gałąź) – Oddzielna linia rozwoju projektu. Umożliwia pracę nad różnymi funkcjami lub wersjami jednocześnie bez wpływu na główną wersję kodu (domyślnie
masterlubmain). - Merge – Łączenie zmian z jednej gałęzi do drugiej. Zazwyczaj używane, aby scalić zmiany z gałęzi pobocznej do głównej (np.
featuredomain). - Staging (index) – Proces przygotowania zmian do zatwierdzenia. Pliki, które są w obszarze staging, będą uwzględnione w następnym commicie.
- Pull – Pobieranie najnowszych zmian zdalnego repozytorium i scalanie ich z lokalnym.
- Push – Wysłanie lokalnych commitów do zdalnego repozytorium.
- Clone – Skopiowanie istniejącego zdalnego repozytorium do lokalnej maszyny.
- Fork – Kopiowanie zdalnego repozytorium do własnego konta na GitHubie (lub innym hostingu Git), co pozwala na niezależną pracę nad projektem.
- Origin – Domyślna nazwa dla zdalnego repozytorium, z którego projekt został sklonowany.
- Remote – Zdalne repozytorium, z którym połączone jest lokalne repozytorium.
Szybki start
Najpierw zainstaluj Git na komputerze: git-scm.com.
Wszystkie typowe funkcje można łatwo wyklikać, ale warto przynajmniej przeczytać jakie polecenia są wykonywane w tle w czasie klikania. Na początek wystarczy rozumieć to co w filmie i umieć wyklikać to co poniżej.
Jeśli chcesz używać poleceń – wykonuj je w wierszu poleceń swojego systemu (cmd, terminal) lub w wierszu poleceń swojego edytora kodu. Na początek potrzebna jest minimalna konfiguracja:
git config --global user.email "adres@poczty.pl"<br>
git config --global user.name "piotrek"<br>Przykładowe polecenia GIT
git init # Inicjalizuje nowe repozytorium
git clone <url> # Klonuje zdalne repozytorium
git status # Pokazuje stan plików
git add <plik> # Dodaje plik do staging area
git add . # Dodaje wszystkie zmienione pliki
git commit -m "wiadomość" # Zapisuje zmiany z komentarzem
git push # Wysyła commity do zdalnego repo
git pull # Pobiera i scala zmiany ze zdalnego repo
git branch # Wyświetla listę gałęzi
git branch <nazwa> # Tworzy nową gałąź
git checkout <gałąź> # Przełącza na inną gałąź
git checkout -b <nazwa> # Tworzy i przełącza na nową gałąź
git merge <gałąź> # Scala gałąź z obecną
git log # Pokazuje historię commitów
git diff # Pokazuje niezapisane zmiany
git reset <plik> # Usuwa plik ze staging area
git rm <plik> # Usuwa plik i dodaje zmianę do staging
git stash # Tymczasowo zapisuje niezacommitowane zmiany
git stash pop # Przywraca ostatnie stash
git remote -v # Pokazuje zdalne repozytoriaZadanie
- Wybierz prosty projekt z kilkoma plikami napisanymi w dowolnym języku.
- Zainicjuj folder projektu w git.
- Dodaj pliki.
- Utwórz startowy commit. Pamiętaj o sensownym opisie.
- Wprowadź zmiany w kodzie.
- Utwórz kolejny commit. Pamiętaj o sensownym opisie.
- Dodaj nowy plik do projektu i znów utwórz nowy commit. Pamiętaj o sensownym opisie.
- Utwórz zdalne repozytorium (np. na GitHubie) i połącz je z lokalnym repozytorium.
- Wprowadź zmiany w kodzie.
- Utwórz kolejny commit. Pamiętaj o sensownym opisie.
- Zsynchronizuj zdalne i lokalne repozytorium.
- Ustaw repozytorium zdalne jako publiczne i wyślij mi linka
Teraz możesz używać swojego konta na GitHubie jako quasi-bloga : )
Twój komentarz