9.7 KiB
Instrukcja pracy z Git i Gitea
Ten dokument zawiera kompletną instrukcję pracy z systemem kontroli wersji Git oraz platformą Gitea dla studentów seminarium. Instrukcja jest zorganizowana od podstaw do bardziej zaawansowanych operacji.
Spis treści
- Co to jest Git?
- Instalacja Git
- Pierwsze logowanie do Gitea
- Konfiguracja Git na komputerze
- Pierwsze pobieranie repozytorium
- Codzienna praca z Git
- Sprawdzanie statusu pracy
- Rozwiązywanie problemów
- Zaawansowane operacje
- Dobre praktyki
1. Co to jest Git?
Git to narzędzie do kontroli wersji plików, które umożliwia:
- Śledzenie historii zmian w plikach
- Współpracę wielu osób nad tym samym projektem
- Przywracanie poprzednich wersji plików
- Równoległą pracę nad różnymi wersjami projektu (gałęzie)
Gitea to platforma webowa (podobna do GitHub), która pozwala na wygodne przeglądanie repozytoriów przez przeglądarkę internetową.
2. Instalacja Git
Przed rozpoczęciem pracy musisz zainstalować Git na swoim komputerze.
Windows
- Pobierz instalator ze strony: https://git-scm.com/download/windows
- Uruchom pobrany plik i postępuj zgodnie z instrukcjami instalatora
- Podczas instalacji pozostaw domyślne ustawienia (klikaj „Next")
- Po instalacji otwórz Git Bash lub PowerShell i sprawdź instalację:
git --version
Alternatywnie możesz zainstalować Git przez winget (w PowerShell):
winget install --id Git.Git -e --source winget
macOS
Opcja 1 – Xcode Command Line Tools (najprostsza):
xcode-select --install
Opcja 2 – Homebrew (zalecana dla aktualnej wersji):
brew install git
Po instalacji sprawdź wersję:
git --version
Linux (Ubuntu/Debian)
sudo apt-get update
sudo apt-get install git
Linux (Fedora)
sudo dnf install git
Po instalacji sprawdź wersję:
git --version
3. Pierwsze logowanie do Gitea
-
Otwórz przeglądarkę internetową i przejdź na adres:
http://150.254.88.90:3000 -
Zaloguj się używając:
- Login: Twój adres uczelniany (np.
pawkle1@st.amu.edu.pl) - Hasło początkowe:
HakerzyZnają(zmień je przy pierwszym logowaniu!)
- Login: Twój adres uczelniany (np.
-
Po zalogowaniu przejdź do Ustawień profilu i uzupełnij:
- Imię i nazwisko
- Avatar (opcjonalnie)
-
Kliknij Odkrywaj, aby zobaczyć dostępne repozytoria.
- Otwórz repozytorium.
- Możesz edytować i przeglądać pliki, README, literaturę lub materiały przez stronę www.
4. Konfiguracja Git na komputerze
Po instalacji Git musisz skonfigurować swoje dane. Otwórz terminal (Git Bash na Windows) i wykonaj:
git config --global user.name "Twoje Imię i Nazwisko" # zapisane w Gitea
git config --global user.email "twoj.email@st.amu.edu.pl"
Te dane będą widoczne przy każdej wprowadzonej przez Ciebie zmianie. Jeśli chcesz używać inne repozytoria, np. na GitHub od Microsoftu pomiń --global aby ustawienia były lokalne, tylko do danego repozytorium.
Sprawdź konfigurację:
git config --list
5. Pierwsze pobieranie repozytorium
Przez terminal
- Otwórz terminal (na windowsie PowerShell lub CMD) i przejdź do katalogu, w którym chcesz mieć repozytorium:
cd /ścieżka/do/katalogu
- Sklonuj repozytorium:
git clone http://150.254.88.90:3000/Seminaria-KLEKA/Seminarium-Psychologia-2027.git
# jeśli pojawi sie info o braku uwierzytelnienia - zaloguj sie do repozytorium w przeglądarce
# jesli nie masz programu git ściągnij go ze strony https://git-scm.com/install/
-
Jeśli pojawi się prośba o uwierzytelnienie – podaj login i hasło z Gitea.
-
Wejdź do sklonowanego katalogu:
cd Seminarium-Psychologia-2027
Przez aplikację graficzną
Możesz też używać aplikacji graficznych takich jak:
- GitHub Desktop (https://desktop.github.com)
- Sourcetree (https://www.sourcetreeapp.com)
6. Codzienna praca z Git
Model 1: Praca na wspólnej gałęzi main
Ten model jest odpowiedni, gdy wszyscy pracują nad wspólnymi plikami. Tak np. jest w naszym seminarium na początku. W miarę rozrostu projektów możemy przenosić się na indywidualne gałęzie lub wręcze prywatne repozytoria.
Krok 1: Pobierz najnowsze zmiany (ZAWSZE na początku pracy!)
git pull
Krok 2: Wprowadź zmiany
Edytuj lub dodaj pliki w katalogu repozytorium (np. notatki w .md, skrypty R, dane).
Krok 3: Dodaj pliki do zapisu
Dodaj konkretny plik:
git add NAZWA-PLIKU.md
Lub dodaj wszystkie zmienione pliki:
git add . # dodaje wszystkie pliki na listę do wysyłki
Krok 4: Zatwierdź zmiany z opisem
git commit -m "Opis zmiany, np. Dodano pomysł na badanie X"
Krok 5: Wyślij zmiany na serwer
git push origin main # wysyła pliki do repozytorium na główną gałąź
Krok 6: Sprawdź na stronie Gitea
Zaloguj się do Gitea i sprawdź w zakładce Code, czy Twoje pliki się pojawiły.
Model 2: Praca na własnej gałęzi
Ten model jest odpowiedni, gdy każdy pracuje nad własnymi danymi/plikami niezależnie od innych.
Tworzenie własnej gałęzi (jednorazowo)
git checkout main
git pull
git checkout -b nazwa-twojej-galezi
Na przykład: dane-katarzyna, rozdzial-3, oliwia-wniosek
Codzienna praca na swojej gałęzi
# Upewnij się, że jesteś na swojej gałęzi
git checkout nazwa-twojej-galezi
# Wprowadź zmiany w plikach...
# Dodaj i zatwierdź zmiany
git add .
git commit -m "Aktualizacja danych"
# Wyślij na serwer
git push origin nazwa-twojej-galezi
Przełączanie między gałęziami
git checkout main # przejście na gałąź główną
git checkout dane-katarzyna # przejście na gałąź Katarzyny
Lista wszystkich gałęzi
git branch -a
7. Sprawdzanie statusu pracy
Sprawdź status zmian
Pokazuje zmodyfikowane pliki oraz pliki oczekujące na zatwierdzenie:
git status
Historia commitów
Wyświetla listę ostatnich zmian:
git log --oneline
Sprawdź aktualną gałąź
git branch
Gwiazdka (*) oznacza gałąź, na której aktualnie pracujesz.
Sprawdź zdalne repozytorium
git remote -v
8. Rozwiązywanie problemów
Merge conflict (konflikt scalania)
Pojawia się, gdy dwie osoby edytowały ten sam fragment pliku.
Rozwiązanie:
- Git oznaczy konfliktowe miejsca w pliku znacznikami
<<<<<<<,=======,>>>>>>> - Otwórz plik i ręcznie wybierz właściwą wersję
- Usuń znaczniki konfliktu
- Zapisz plik i wykonaj:
git add nazwa-pliku
git commit -m "Rozwiązano konflikt"
git push
Brak zmian po git push
Sprawdź:
- Czy jesteś w odpowiednim katalogu repozytorium?
- Czy jesteś na właściwej gałęzi? (
git branch) - Czy wykonałeś
git addigit commitprzedgit push?
Błąd uwierzytelnienia
Zaloguj się najpierw do Gitea przez przeglądarkę, a następnie spróbuj ponownie.
9. Zaawansowane operacje
Ignorowanie plików (.gitignore)
Aby Git ignorował określone pliki, utwórz plik .gitignore w głównym katalogu repozytorium:
# Pliki tymczasowe R
.Rhistory
.RData
.Rproj.user/
# Katalog na pliki lokalne
_lokalnie/
Od tej pory GIt nie będzie zwracał uwagi co się dzieje w katalogu _lokalnie
Usunięcie pliku/katalogu z repozytorium (zachowując lokalnie)
git rm -r --cached nazwa-katalogu
git commit -m "Usunięto katalog z repozytorium"
git push
Usunięcie katalogu z gałęzi main
Jeśli przez pomyłkę dodano prywatny katalog do main:
git checkout main
git rm -r NazwaKatalogu/
git commit -m "Usunięto prywatny katalog"
git push
Zmiana adresu zdalnego repozytorium
git remote set-url origin http://150.254.88.90:3000/Seminaria-KLEKA/NazwaRepo.git
Nadpisanie zdalnej wersji lokalną (OSTROŻNIE!)
Uwaga: Ta operacja nadpisuje historię na serwerze!
git push origin main --force
11. Dobre praktyki
-
Zawsze wykonuj
git pullprzed rozpoczęciem pracy – unikniesz konfliktów. -
Używaj opisowych wiadomości w commitach – np. „Dodano analizę rzetelności skali X" zamiast „update".
-
Nie wysyłaj plików tymczasowych – dodaj do
.gitignore:.Rhistory.RData.Rproj.user/
-
Nie wysyłaj dużych plików binarnych – Git nie jest optymalny dla dużych plików (np. baz danych, filmów).
-
Regularnie zapisuj postępy – małe, częste commity są lepsze niż jeden duży.
-
Pracując na własnej gałęzi – nie dodawaj katalogów innych.
-
W README zapisuj postępy i refleksje – to ułatwia orientację w projekcie.
Szybka ściągawka
| Polecenie | Opis |
|---|---|
git clone URL |
Pobierz repozytorium |
git pull |
Pobierz najnowsze zmiany |
git status |
Sprawdź status zmian |
git add . |
Dodaj wszystkie pliki |
git commit -m "opis" |
Zatwierdź zmiany |
git push origin main |
Wyślij na serwer |
git branch |
Pokaż gałęzie |
git checkout nazwa |
Przełącz gałąź |
git checkout -b nazwa |
Utwórz nową gałąź |
git log --oneline |
Historia commitów |
Wskazówka:
Jeśli zapomnisz hasła lub napotkasz problem techniczny, skontaktuj się z prowadzącym seminarium.