Przejdź do głównej zawartości

Git

Instalacja Git

sudo apt update
sudo apt install git

Konfiguracja

Ustawienia globalne (jednorazowo):

git config --global user.name "Twoje Imię"
git config --global user.email "twoj@email.com"

Sprawdzenie konfiguracji:

git config --list

Skonfiguruj SSH (klucz publiczny)

Instrukcja w Linux

Inicjalizacja repozytorium

Tworzenie nowego repozytorium:

git init

lub

git init --bare

Repozytorium "bare" nie zawiera roboczej kopii kodu — jest przeznaczone do współdzielenia.

Klonowanie istniejącego repozytorium:

git clone https://adres_repozytorium.git

lub

git clone git@192.168.1.2:repozytoria/moje-repo.git

Dodawanie plików

Dodanie pojedynczego pliku:

git add plik.txt

Dodanie wszystkich plików:

git add .

Usuwanie plików i katalogów

Usunięcie plików/folderów z repozytorium i z dysku

git rm -rf nazwa_pliku_lub_folderu
git commit -m "Usunięto plik/folder"
git push

Usunięcie tylko z repozytorium, ale pozostawienie na dysku

git rm -r --cached nazwa_pliku_lub_folderu
git commit -m "Usunięto z repozytorium, pozostawiono lokalnie"
git push

Usunięcie całkowicie z historii repo (np. hasła, duże pliki)

Jeśli plik już był zacommitowany i nie chcesz, żeby był widoczny w historii:

git filter-repo --path nazwa_pliku --invert-paths

albo starszą metodą:

git filter-branch --force --index-filter \
'git rm -r --cached --ignore-unmatch nazwa_pliku' \
--prune-empty --tag-name-filter cat -- --all

Commitowanie zmian

Utworzenie commita z wiadomością:

git commit -m "Opis zmian"

Pushowanie do zdalnego repozytorium

Push do głównej gałęzi (np. main):

git push origin main

lub na boeing

git push -u origin boeing

Tworzenie i przełączanie branchy

Tworzenie nowego brancha:

git branch nowy-branch

Przełączenie się na branch:

git checkout nowy-branch

Utworzenie i przełączenie jednocześnie:

git checkout -b nowy-branch

Mergowanie branchy

Przełącz się na gałęź docelową (np. main):

git checkout main

Scal gałęź nowy-branch do main:

git merge nowy-branch

Pobieranie zmian (pull)

Pobranie najnowszych zmian z gałęzi main:

git pull origin main

Pobranie zmian z aktualnej gałęzi:

git pull

Przydatne polecenia

Z jakiego zdalnego repo korzystam:

git remote -v

Podgląd statusu repozytorium:

git status

Historia commitów:

git log

Wyświetlenie branchy:

git branch

Wszystkie gałęzie lokalne i zdalne:

git branch -a

Usunięcie brancha:

git branch -d nazwa-branch

Sprawdzenie różnic:

git diff