Sari la conținut
Tablă albă cu notițe adezive și o schemă desenată cu markere
Foto: Daniil Komov / Pexels
IT&TECH

Ce rezolvă Git și cum faci primii pași în controlul versiunilor

Cine a lucrat vreodată la un document important a trăit scena: fișierul se numește „raport_final”, apoi „raport_final_2”, „raport_final_corectat” și, în cele din urmă, „raport_final_bun_chiar_acum”. După câteva zile, nimeni nu mai știe care e versiunea reală și ce s-a schimbat între ele. În programare problema e și mai serioasă, pentru că o greșeală într-o singură linie poate strica tot proiectul.

Pentru asta există controlul versiunilor, iar cel mai folosit instrument este Git. Ideea nu e complicată: sistemul îți păstrează istoricul tuturor modificărilor, îți permite să te întorci la orice moment anterior și te lasă să lucrezi în echipă fără ca oamenii să-și suprascrie munca între ei. Mai jos găsești conceptele de bază și primii pași.

Ce rezolvă controlul versiunilor

Un sistem de control al versiunilor rezolvă trei probleme care apar în orice proiect cu cod sau cu fișiere text. Prima este istoricul: poți vedea cine a schimbat ce și când și poți afla de ce a fost făcută o modificare. A doua este siguranța: dacă o schimbare strică ceva, te întorci la ultima variantă bună în câteva secunde. A treia este colaborarea: mai multe persoane lucrează în paralel pe același proiect, iar sistemul combină munca lor.

E util și când lucrezi singur. Mulți programatori independenți îl folosesc pentru a-și organiza proiectele și pentru a putea arăta clienților cum a evoluat lucrarea. Dacă lucrezi pe cont propriu, ghidul despre administrarea timpului ca programator freelancer te poate ajuta să îți organizezi și restul fluxului de lucru.

Cuvintele pe care trebuie să le știi

  • Depozit (repository): folderul proiectului, împreună cu tot istoricul lui. Poate fi pe calculatorul tău sau pe un serviciu online.
  • Commit: o salvare a stării proiectului la un moment dat, însoțită de un mesaj care explică ce s-a schimbat. E ca un punct de salvare dintr-un joc.
  • Ramură (branch): o linie paralelă de lucru. Poți încerca o idee nouă pe o ramură, fără să atingi varianta principală.
  • Îmbinare (merge): unirea modificărilor dintr-o ramură în alta, atunci când munca e gata.
  • Depozit la distanță (remote): copia proiectului aflată pe un server, cu care sincronizezi ce lucrezi local.
  • Conflict: situația în care două persoane au modificat aceeași zonă a unui fișier și sistemul nu știe singur care variantă să o păstreze.

Primii pași, într-o ordine simplă

  1. Instalează Git pe calculator și configurează-ți numele și datele de identificare asociate modificărilor tale.
  2. Creează un folder pentru proiect și inițializează în el un depozit, cu comanda de inițializare. Din acest moment, Git urmărește folderul.
  3. Creează sau modifică un fișier, apoi folosește comanda de verificare a stării ca să vezi ce a observat sistemul.
  4. Adaugă fișierele dorite în zona de pregătire, cu comanda „add”, adică alegi ce intră în următoarea salvare.
  5. Fă primul commit, cu comanda „commit” și un mesaj scurt și clar, de exemplu „Adaugă pagina de pornire”.
  6. Consultă istoricul cu comanda „log” și vezi cum apar salvările una după alta.
  7. Încearcă să creezi o ramură nouă, să faci o modificare în ea și să o îmbini înapoi, ca să vezi cum lucrează sistemul.

Obiceiuri care fac diferența

Instrumentul în sine se învață repede. Ce îl face util este modul în care îl folosești. Câteva reguli simple te ajută de la început:

  • fă commit-uri mici și dese, fiecare cu un scop precis, nu o salvare uriașă la sfârșit de săptămână;
  • scrie mesaje care spun ce s-a schimbat și, la nevoie, de ce, nu doar „modificări” sau „fix”;
  • lucrează pe ramuri separate pentru funcții noi sau pentru corecții importante;
  • nu include parole, chei de acces sau date personale în depozit, iar pentru fișierele pe care nu vrei să le urmărești folosește fișierul de excluderi;
  • sincronizează-te periodic cu depozitul de la distanță, ca să nu ai surprize mari când îmbini munca.

Greșeli frecvente ale începătorilor

Cea mai frecventă confuzie este să crezi că Git înlocuiește copia de siguranță. Nu e așa: istoricul trăiește de obicei pe același calculator cu proiectul, deci dacă discul se strică, pierzi ambele. Un depozit la distanță ajută, dar nici el nu ține loc de o strategie de salvare a datelor. Pentru asta, citește despre cele mai bune practici pentru backup-ul datelor.

O altă greșeală este să te sperii de conflicte. Ele apar firesc când mai multe persoane lucrează la aceleași fișiere și se rezolvă ușor dacă ai răbdare: sistemul îți arată zonele în conflict, iar tu alegi ce rămâne. Mai gravă este evitarea completă a comenzilor „mai complicate”, din teama de a nu strica ceva. Cu un depozit în care ai făcut salvări regulate, aproape orice greșeală poate fi anulată.

Întrebări frecvente

Trebuie să fiu programator ca să folosesc Git?

Nu. Orice fișier text, de la un manuscris la fișiere de configurare, poate fi urmărit. Programatorii îl folosesc cel mai mult, dar și scriitorii, designerii de documente sau cei care mențin site-uri îl pot folosi.

Care e diferența dintre Git și serviciile online de găzduire a depozitelor?

Git este instrumentul care ține istoricul, iar serviciile online sunt locuri unde poți păstra o copie a depozitului și unde poți colabora cu alții. Poți folosi Git complet local, fără niciun serviciu extern.

Cât durează până îl înveți?

Conceptele de bază se învață în câteva ore, dar fluența vine cu practica. Începe cu un proiect mic, personal, și ia comenzile pe rând.

Git nu e un obstacol pentru începători, ci o plasă de siguranță: îți permite să încerci, să greșești și să te întorci. Dacă îl introduci în rutina ta încă de la primul proiect, vei câștiga atât ordine, cât și încrederea de a face schimbări fără teama că strici ceva ireversibil.

Foto: Daniil Komov / Pexels