Sari la conținut
← Git & GitHub pentru developeri
Progres curs 0 / 7 lecții (0%)

De ce Git

Git rezolvă trei probleme pe care le are orice proiect de cod: „ce s-a schimbat și când", „cum revin la o versiune care funcționa", și „cum lucrăm mai mulți pe același cod fără să ne călcăm în picioare". GitHub adaugă găzduirea centralizată și colaborarea.

Ce e un „commit"

Un commit e o fotografie a întregului proiect la un moment dat, cu un mesaj care spune ce s-a schimbat și de ce. Șirul de commit-uri e istoria proiectului — poți naviga oricând înapoi la oricare.

Cele trei zone

  • Working directory: fișierele tale, așa cum sunt acum.
  • Staging area: ce ai marcat pentru următorul commit (`git add`).
  • Repository: istoria commit-urilor (`git commit`).

Fluxul de bază

git status              # ce s-a schimbat
git add fisier.php      # pune în staging
git add .               # tot ce s-a schimbat
git commit -m "Adaugă validare la formularul de contact"
git log --oneline       # istoria

Ce NU pui în Git

  • Secrete: `.env`, chei, parole.
  • Dependențe instalate: `vendor/`, `node_modules/`.
  • Fișiere generate: build-uri, cache.
  • Fișiere mari binare (de obicei).
  • → toate acestea în `.gitignore`.

Un .gitignore tipic pentru Laravel

/vendor
/node_modules
/public/build
/.env
/.env.backup
/storage/*.key
.DS_Store
/public/storage

Exercițiu

Într-un folder de proiect, rulează git init. Creează un .gitignore potrivit. Fă 3 commit-uri mici, fiecare cu o schimbare logică și un mesaj clar. Rulează git log --oneline și citește-ți istoria.

Greșeli frecvente

  • Un singur commit gigant „am făcut tot" în loc de commit-uri mici și logice.
  • Mesaje inutile: „fix", „update", „asdf".
  • Comiți .env sau node_modules.
  • git add . fără să verifici cu git status ce incluzi.

De reținut

  • Commit = fotografie a proiectului + mesaj despre ce și de ce.
  • Flux: modifici → git add (staging) → git commit.
  • Commit-uri mici, logice, cu mesaje clare.
  • .gitignore pentru secrete, dependențe, fișiere generate.

Pe scurt

Git ține istoria proiectului în commit-uri. Lucrezi în trei zone, comiți des și mic, și ții gunoiul afară cu .gitignore.

Folosim cookie-uri esențiale pentru funcționarea site-ului și, cu acordul tău, cookie-uri de analiză și publicitate. Partenerii noștri, inclusiv Google, pot folosi cookie-uri pentru a afișa reclame relevante. Detalii în Politica de cookie-uri.