Dezvoltare Web

Git pentru Web Developers - De la Zero la Productiv

Invata Git de la zero. Comenzi esentiale, workflows si best practices pentru version control in proiecte web.

A

Andrei Fieraru

Autor

Git version control - workflow diagram

Git e ca o asigurare pentru codul tau - nu stii cat de important e pana cand ai nevoie de el. Am vazut developeri care au pierdut saptamani de munca pentru ca nu foloseau version control.

Ce este Git?

Git este un sistem de version control distribuit. Iti permite sa:

  • Salvezi istoricul complet al proiectului
  • Lucrezi pe mai multe functionalitati in paralel
  • Colaborezi cu alte persoane
  • Revii la versiuni anterioare oricand

Instalare si configurare

Instalare

# macOS
brew install git

# Ubuntu/Debian
sudo apt install git

# Windows
# Download de la git-scm.com

Configurare initiala

git config --global user.name "Numele Tau"
git config --global user.email "email@exemplu.ro"
git config --global init.defaultBranch main

Comenzi esentiale

Initializare proiect

# Proiect nou
git init

# Clonare proiect existent
git clone https://github.com/user/repo.git

Workflow de baza

# Vezi status
git status

# Adauga fisiere pentru commit
git add filename.txt
git add .  # toate fisierele

# Salveaza modificarile
git commit -m "Descriere modificari"

# Trimite la remote
git push origin main

Vizualizare istoric

# Istoric commits
git log
git log --oneline --graph

# Diferente
git diff
git diff --staged

Branching - Lucru in paralel

De ce branches?

  • Izolezi functionalitati noi
  • Poti experimenta fara risc
  • Colaborare fara conflicte

Comenzi branches

# Creeaza branch nou
git branch feature-name

# Schimba branch
git checkout feature-name
# sau (Git 2.23+)
git switch feature-name

# Creeaza si schimba
git checkout -b feature-name
git switch -c feature-name

# Lista branches
git branch

# Sterge branch
git branch -d feature-name

Merge branches

# Te muti pe branch-ul tinta
git checkout main

# Merge branch-ul
git merge feature-name

Git Workflows populare

1. Feature Branch Workflow

Cel mai comun pentru echipe mici:

main ─────●─────●─────●─────●
           \         /
feature     ●───●───●
  1. Creeaza branch pentru fiecare feature
  2. Lucreaza pe branch
  3. Merge inapoi in main

2. Gitflow Workflow

Pentru proiecte cu release-uri:

main     ─────●─────────────●
              |             |
develop ──●───●───●───●───●───●
           \     /
feature     ●───●

Branches:

  • main: cod productie
  • develop: integrare
  • feature/*: functionalitati noi
  • release/*: pregatire release
  • hotfix/*: fix-uri urgente

3. Trunk-Based Development

Pentru CI/CD rapid:

main ───●───●───●───●───●───●
  • Toata lumea lucreaza pe main
  • Commits mici, frecvente
  • Feature flags pentru functionalitati incomplete

Rezolvare conflicte

Cand apar conflicte?

Cand doi oameni modifica aceleasi linii.

Cum arata un conflict?

<<<<<<< HEAD
codul tau
=======
codul celuilalt
>>>>>>> feature-branch

Rezolvare

  1. Deschide fisierul
  2. Alege versiunea corecta (sau combina)
  3. Sterge marcajele (<<<<, ====, >>>>)
  4. git add si git commit

.gitignore - Ce sa NU salvezi

Exemplu .gitignore

# Dependencies
node_modules/
vendor/

# Build output
dist/
build/

# Environment
.env
.env.local

# IDE
.vscode/
.idea/

# OS
.DS_Store
Thumbs.db

# Logs
*.log
npm-debug.log*

GitHub/GitLab best practices

Commits

  • Mesaje clare: “Add user authentication” nu “fix stuff”
  • Commits atomice: o schimbare logica per commit
  • Commits frecvente: nu astepta zile

Pull Requests

  • Descriere clara a schimbarilor
  • Screenshots pentru UI changes
  • Link la issue/task
  • Request review de la colegi

Branch naming

feature/add-login
bugfix/fix-header-mobile
hotfix/security-patch
refactor/clean-api

Comenzi avansate utile

Stash - Pune deoparte temporar

git stash
# lucreaza la altceva
git stash pop

Revert - Anuleaza un commit

git revert abc123

Reset - Intoarce in timp

# Soft: pastreaza modificarile
git reset --soft HEAD~1

# Hard: sterge tot (ATENTIE!)
git reset --hard HEAD~1

Cherry-pick - Copiaza un commit

git cherry-pick abc123

Unelte GUI recomandate

UnealtaPlatformaPret
GitKrakenCross-platformFreemium
SourcetreeWin/MacFree
GitHub DesktopWin/MacFree
VS Code GitCross-platformFree

Erori frecvente si solutii

”Permission denied"

# Genereaza SSH key
ssh-keygen -t ed25519
# Adauga in GitHub/GitLab

"Merge conflict”

Rezolva manual si commit.

”Detached HEAD"

git checkout main

"Push rejected”

git pull --rebase
git push

FAQ

Git vs GitHub?

Git = software version control. GitHub = platforma hosting pentru repos Git.

De ce nu ZIP-uri?

Git e mai eficient, permite colaborare si pastreaza istoric complet.

Pot folosi Git pentru non-code?

Da! Designers folosesc pentru fisiere text, configurari, documentatie.

Cat de des fac commit?

De fiecare data cand ai o schimbare functionala completa.

Concluzie

Git e o abilitate esentiala pentru orice developer. Incepe cu comenzile de baza si extinde gradual. Practica face perfect.

Vrei training Git pentru echipa ta? Iron Media ofera workshop-uri de version control. Contacteaza-ne pentru detalii.

A

Andrei Fieraru

Autor & Creator de continut

Pasionat de design, print si web development. Scrie articole pentru a ajuta afacerile sa creasca prin solutii creative si inovatoare.

Ultima actualizare: 6 decembrie 2025

Articole similare

Ilustrație cu procesul de creare site online și succes digital, cu elemente de web design și strategii digitale.
Dezvoltare Web

Creare Site Online: Ghidul Complet pentru Afacerea Ta

Descoperă totul despre creare site online, de la planificare la lansare. Află cum un site bine optimizat îți poate propulsa afacerea. Contactează Iron Media

M
Marius Fonta
O persoană interacționând cu o pagină web pe un laptop, simbolizând procesul de creare și navigare.
Dezvoltare Web

Pagina Web Creare: Răspunsuri Esențiale la Întrebări

Totul despre creare pagină web: costuri, etape și mentenanță. Află răspunsuri esențiale pentru proiectul tău și începe crearea paginii tale de succes cu Iron

A
Andrei Fieraru
Ilustrație cu elemente cheie pentru a creea un site web de succes, reprezentând procesul de dezvoltare a unui site web.
Dezvoltare Web

Top 10 Lucruri Esențiale Când Vrei Să Creezi un Site

Descoperă cele 10 elemente cheie pentru a creea un site web de succes, de la planificare la mentenanță. Află cum să îți construiești prezența online eficient

C
Cristina Otel