Tutorial GIT
Tutorial GIT
Git este un sistem de control al versiunilor distribuit, folosit pentru a urmări modificările în codul sursă în timpul dezvoltării software. Acest tutorial tehnic vă va ghida prin conceptele de bază și utilizarea Git pe un repository local, incluzând exemple practice explicate pas cu pas.
Configurarea Git
Prima dată când folosiți Git, este recomandat să configurați informațiile despre utilizator. Aceste informații vor fi incluse în fiecare commit pe care îl faceți.
git config --global user.name "Numele Tău"
git config --global user.email "emailul_tau@example.com"
Crearea unui Repository
Un repository (repo) Git este locul unde Git stochează toate informațiile despre proiectul dumneavoastră, inclusiv istoricul versiunilor.
Inițializarea unui Repository Nou
Pentru a inițializa un repository Git într-un director existent, navigați în directorul respectiv și rulați:
git init
Aceasta va crea un subdirector .git
care conține toate fișierele necesare pentru repository-ul Git.
Stadiile Fișierelor
În Git, fișierele pot fi în trei stadii:
Modified (modificat) – Fișierul a fost modificat dar nu a fost adăugat în staging area.
Staged (stagiat) – Fișierul a fost adăugat în staging area și va fi inclus în următorul commit.
Committed (comis) – Modificările au fost salvate în repository.
Adăugarea și Commitarea Modificărilor
Adăugarea Fișierelor la Staging Area
Staging area este o etapă intermediară unde adăugați fișierele pe care doriți să le includeți în următorul commit. Pentru a adăuga fișiere, folosiți comanda:
git add nume_fisier
Pentru a adăuga toate fișierele modificate, folosiți:
git add .
Commitarea Modificărilor
Un commit salvează starea curentă a staging area în istoricul repository-ului. Fiecare commit ar trebui să aibă un mesaj descriptiv care explică modificările. Pentru a face un commit, folosiți comanda:
git commit -m "Mesaj descriptiv pentru commit"
Vizualizarea Istoricului Commit-urilor
Pentru a vedea istoricul commit-urilor din repository-ul local, folosiți comanda:
git log
Aceasta va afișa o listă a commit-urilor, incluzând hash-ul commit-ului, autorul, data și mesajul commit-ului.
Vizualizarea Stării Curente
Comanda git status
afișează informații despre starea curentă a repository-ului, inclusiv fișierele modificate și cele aflate în staging area:
git status
Compararea Modificărilor
Pentru a vedea diferențele dintre fișierele modificate și ultima versiune comisă, folosiți comanda:
git diff
Pentru a vedea diferențele dintre fișierele din staging area și ultima versiune comisă, folosiți:
git diff --staged
Revertarea Modificărilor
Revertarea Modificărilor necomise
Pentru a reveni la ultima versiune comisă a unui fișier modificat, folosiți comanda:
git checkout -- nume_fisier
Eliminarea Fișierelor din Staging Area
Pentru a elimina un fișier din staging area, folosiți comanda:
git reset HEAD nume_fisier
Resetarea la un Commit Anterior
Pentru a reseta repository-ul la un commit anterior și a pierde toate modificările de la acel commit, folosiți comanda:
git reset --hard hash_commit
Crearea și Schimbarea Branch-urilor
Branch-urile permit lucrul la mai multe caracteristici sau bug-uri simultan, fără a afecta codul principal.
Crearea unui Branch Nou
Pentru a crea un branch nou, folosiți comanda:
git branch nume_branch
Schimbarea Branch-ului Curent
Pentru a schimba branch-ul curent, folosiți comanda:
git checkout nume_branch
Crearea și Schimbarea Branch-ului Simultan
Pentru a crea și a schimba în același timp branch-ul, folosiți comanda:
git checkout -b nume_branch
Fuzionarea Branch-urilor
Pentru a fuziona modificările dintr-un branch în branch-ul curent, folosiți comanda:
git merge nume_branch
Exemplu Practic
Să construim un exemplu practic în care folosim toate conceptele discutate:
- Inițializarea unui Repository Nou
mkdir proiect
cd proiect
git init
- Crearea unui Fișier și Adăugarea lui la Staging Area
echo "print('Salut, lume!')" > script.py
git add script.py
- Commitarea Modificărilor
git commit -m "Adaugă scriptul inițial"
- Modificarea Fișierului
echo "print('Modificare script')" >> script.py
- Vizualizarea Stării Curente
git status
- Vizualizarea Diferențelor
git diff
- Adăugarea Modificărilor la Staging Area și Commitarea
git add script.py
git commit -m "Modifică scriptul"
- Crearea unui Branch Nou și Schimbarea la Acesta
git checkout -b functionalitate_noua
- Modificarea Fișierului pe Noul Branch
echo "print('Funcționalitate nouă')" >> script.py
git add script.py
git commit -m "Adaugă funcționalitate nouă"
- Schimbarea Înapoi la Branch-ul Principal și Fuzionarea Modificărilor
git checkout master
git merge functionalitate_noua
Prin aceste exemple și concepte de bază, am învățat cum să utilizăm Git pentru a urmări modificările în proiectele noastre locale. Practicând aceste comenzi, veți dobândi o înțelegere profundă a modului în care funcționează Git și cum să-l folosiți eficient în dezvoltarea software.