fbpx

De ce trebuie să știi să utilizezi Git?

Git trebuie să facă parte din abilitățile tale tehnice indiferent de cariera în IT pe care ți-o dorești. Îl vei vedea menționat în 90% din descrierile job-urilor. Acesta este motivul pentru care îl includem și noi în orice plan de studiu personalizat din cadrul Programului nostru de Mentorat „30 Weeks-For-IT” sau în cadrul cursurilor Java Software Developer, Web Developer, Network Engineer sau Quality Assurance Engineer.

Ți s-a întâmplat vreodată să lucrezi la un proiect mai multe ore în șir, iar la final, din cauza unei erori sau probleme să pierzi tot progresul? Sau să vrei să lucrezi împreună cu colegii, fiecare fiind responsabil de o anumită componentă din proiect? Pentru astfel de motive și multe altele au fost dezvoltate sistemele de versionare, cum ar fi Git.

Ce este Git?

Git reprezintă la momentul actual, unul dintre cele mai populare sisteme ce pot să fie folosite pentru a păstra o evidență a modificărilor aduse într-un proiect. Oferă de asemenea un mod de a ne întoarce la o anumită versiune, în cazul în care apar diverse probleme în momentul în care se fac actualizari la nivel de cod.

Evidența modificărilor aduse se face la nivel de fișier individual, nu doar la nivel de proiect, iar acest lucru facilitează și lucrul în echipă. Mai mult decât atât, în momentul în care cineva vrea să aducă o actualizare într-un fișier, aceasta poate să fie revizuită de ceilalți membrii ai echipei înainte de a ajunge în versiunea principală a proiectului.

La bază, Git reprezintă o aplicație ce este instalată pe sistemul nostru, rulând local. Fișierele în care lucrăm și istoricul fiecăruia dintre ele sunt de asemenea păstrate local. Pentru a putea colabora cu alte persoane, avem la dispoziție servicii online în care putem încărca fișierele și istoricul lor: GitHub, GitLab, Bitbucket etc. Fiecare dintre acestea vin cu diverse caracteristici, iar înainte de a-l alege pe unul dintre ele trebuie să ne punem diverse întrebări: câți oameni vor lucra la proiect, vrem ca acesta să fie public sau privat etc.

Cum putem folosi Git?

Ulterior instalării Git pe sistemul nostru acesta poate să fie folosit direct din linia de comandă, dar avem și posibilitatea de a instala alte aplicații care să ofere o interfață grafică. Funcționalitatea în sine este aceeași, indiferent de modul de utilizare, dar cu ajutorul interfeței grafice putem să vedem mai clar operațiile pe care urmează să le realizăm și rezultatul acestora. Câteva exemple de aplicații ce pot fi instalate ”peste” Git sunt: TortoiseGit, SourceTree, SmartGit etc.

Funcțiile puse la dispoziție de Git pot de asemenea să fie integrate și în majoritatea IDE-urilor profesioniste: PyCharm, IntelliJ, PHPStorm, NetBeans etc. Acestea oferă în mod direct o interfață intuitivă pentru comenzile de Git.

Definirea și utilizarea unui repository

Un repository (utilizat și cu forma de repo) conține toate fișierele din cadrul unui proiect și pune la dispoziție și istoricul modificărilor legate de fiecare dintre acestea. La nivelul sistemului de fișiere putem spune că un repository este echivalentul unui director care conține toate informațiile legate de un proiect – atât fișiere individuale cât și sub-directoare.

În momentul în care transformăm un director existent într-un repository de Git (sau creăm un nou repository gol) avem în mod automat adăugat un folder numit .git ce conține toate metadatele specifice de versionare.

Utilizarea a mai multe branch-uri, commits și  pull request-uri

Sistemul de versionare Git oferă posibilitatea de a lucra pe mai multe branch-uri (sau ramuri) ale proiectului principal. Acestea minimizează impactul problemelor ce pot să apară dacă un defect este introdus în aplicații, facilitând în paralel lucrul în echipă. Branch-urile reprezintă copii ale proiectului, realizate de cele mai multe ori din main (sau master, pentru proiecte mai vechi) – acesta fiind rădăcina proiectului în sine.

Dacă doi programatori lucrează în paralel la două lucruri diferite: o nouă funcționalitate și repararea unui defect existent, atunci fiecare dintre aceștia își va crea un branch propriu unde își va aduce modificările. Mai mult decât atât, dacă cei doi vor să colaboreze la un moment dat,  pot trece pe același branch pentru a vedea modificările aduse până la un moment dat și să propună îmbunătățiri.

Pe măsură ce fiecare fișier individual ajunge la versiunea finală, pe care o dorim integrată în cadrul proiectului, acesta poate să fie committed (sau comis). Obținem astfel o decuplare și mai bună din punct de vedere al progresului, nefiind obligați să includem într-un commit toate fișierele la care lucrăm.

În momentul în care terminăm de lucrat pe un branch și dorim să includem actualizările în main, vom realiza un pull request. Acesta oferă posibilitatea de revizuire a modificărilor de către alți colaboratori din proiect. Revizuirile pot consta în feedback constructiv sau diverse indicații legate de probleme ce trebuie reparate și nu au fost observate inițial de persoana care a realizat pull request-ul.

Cum pot învăța Git?

Indiferent de limbajul de programare pe care îl veți folosi sau direcția în care acesta va fi folosit: dezvoltare software, machine learning, testare automată etc. veți avea nevoie de un sistem de versionare și un host online în care să vă găzduiți proiectele.

În cadrul cursului de Git & Bitbucket oferit de Telecom Academy veți învăța comenzile specifice de adăugare a fișierelor dintr-un proiect, commitere și modul de realizare a unui pull request, împreună cu alte noțiuni mai avansate. După ce înveți să îl utilizezi, nu uita să distribui pe profilul tău de LinkedIn portofoliul pe care ți l-ai creat.

Mai departe, aceste noțiuni vor putea fi folosite în orice fel de proiect veți lucra – atât cele pornite pe cont propriu dar și cele existente la care vă veți alătura după ce au fost începute.

    Sponsori și parteneri