Logo do pobrania - https://git-scm.com/downloads/logos
Rozproszony system kontroli wersji.
Umożliwia podgląd zmian w repozytorium oraz wycofanie zmian do dowolnego momentu czasu.
GitHub / GitLab / Bitbucket
Procesy
## Dodaje plik do repozytorium
git add <plik>
## Tworzy commit z opisem zmian
git commit -m "Opis zmian"
## Tworzy nowy branch i przełącza na niego
git switch -c <branch>
## Pobiera zmiany z repozytorium zdalnego i scala je z lokalnym
git pull
## Wysyła zmiany do repozytorium zdalnego
git push
## Wyświetla historię commitów
git log
## Wyświetla status plików w repozytorium
git status
# Wyświetl listę wszystkich ustawień konfiguracyjnych pogrupowanych według pliku źródłowego
git config --list --show-origin
Istnieje możliwość podłączenia dowolnego polecenia pod kluczowe czynności.
W katalogu z konfiguracją repozytorium znajduje się katalog .git/hooks/, a w nim pliki:
pre-commit.sampleprepare-commit-msg.samplecommit-msg.samplepost-commit.samplepost-merge.samplepre-merge-commit.samplepre-rebase.samplepost-rewrite.samplepost-checkout.samplereference-transaction.samplepre-push.sampleTo są przykładowe pliki, które możemy wykorzystać do podłączenia własnych skryptów.
Możemy stworzyć własny skrypt, np. pre-commit, który będzie wykonywany przed każdym commitem.
Przykładowy skrypt, który sprawdza, czy w kodzie nie ma błędów składniowych:
#!/bin/bash
# Sprawdź składnię plików JavaScript
for file in $(git diff --cached --name-only | grep '\.js$'); do
if ! node -c "$file"; then
echo "Błąd składni w pliku $file"
exit 1
fi
done
# Jeśli nie ma błędów, kontynuuj commit
exit 0
💡 Hint: Skrypt musi być wykonywalny. Możemy to osiągnąć poprzez:
chmod +x .git/hooks/pre-commit
gh - GitHub CLIgit-standup - Git commit message generatorgit-extras - Extra utilities for gitgit-chglog - Changelog generator for gitgit-flow - Git branching modelLista innych aplikacji okienkowych - https://git-scm.com/downloads/guis
gitk - Graficzny interfejs do przeglądania historii repozytorium