Introducere în Git

Ce este Git?
Un sistem de gestionare a versiunilor fișierelor dintr-un dosar (numit și folder sau director). Altfel spus, un program care înregistrează fiecare modificare dintr-un dosar de-a lungul timpului, astfel încât utilizatorii acelui dosar pot să se întoarcă în orice punct din istoria dosarului sau pot analiza evoluția lui de-a lungul timpului. O funcție foarte importantă a Git este cea de „ramuri”, prin care istoria unui dosar poate evolua concomitent în mod diferit în mai multe „ramuri” (create cu „git checkout -b” sau cu „git branch”), și într-un moment ales acele ramuri pot fi unificate (cu comanda „git merge”) Ceea ce face Git cu adevărat folositor este funcția de „remote”-uri, adică servere pe care git încarcă întreaga istorie a unui dosar permițând colaborarea mai multor utilizatori asupra aceluiași dosar. Exemple de servicii care folosesc Git pentru a permite colaborarea utilizatorilor asupra unor proiecte sunt GitHub și BitBucket. GitHub este cel mai popular, dar BitBucket permite crearea unui număr nelimitat de depozite Git private.

Cum se instalează Git?
Pe sistemele Linux care folosesc managerul de pachete apt-get (inclusiv distribuția Linux Ubuntu), Git se instalează cu comanda „sudo apt-get install git”. Pe Windows, Git se instalează folosind programul executabil de instalare de pe site-ul Git și în funcție de opțiunile alese în timpul instalării va fi utilizarea ulterioară Git: fie veți putea utiliza Git în orice fereastră Command Prompt, fie veți putea utiliza Git doar din programul Git Shell.

Cum se folosește Git?
Odată instalat Git poate fi folosit prin comenzile în linia de comandă (cu alte cuvinte în terminal) pe care le oferă. Există însă și programe cu interfață grafică pentru utilizator care fac utilizarea Git mai ușoară în unele cazuri, de exemplu, SourceTree și GitHub for Desktop (ambele compatibile cu Windows 7 și versiuni mai târzii de Windows și cu OS X 10.9 și versiuni mai târzii de OS X), dar care nu fac obiectul acestui articol.

Trecem în revistă câteva comenzi mai importante (care se rulează din directorul în care se dorește urmărirea modificărilor fișierelor, director în care se intră cu ajutorul comenzii „cd”).
git init
Această comandă transformă directorul curent într-un depozit Git, indiferent dacă directorul curent este gol sau nu. Această comandă nu este influențată de conținutul directorului și nu afectează conținutul directorului decât că practic, această transformare constă doar în crearea directorului (ascuns pe sistemele Linux) „.git” în interiorul directorului curent. Acest dosar conține informații folosite în mod intern de Git pentru gestiunea versiunilor dosarului.
git add X
Această comandă marchează fișierele sau dosarele X aflate în interiorul dosarului depozitului Git ca făcând parte din „staging area”. Aceste fișiere vor fi înregistrate în istoria dosarului la următoarea rulare a comenzii „git commit”. Această operațiune nu are sens decât dacă ați efectuat modificări asupra fișierelor/subdosarelor X de la ultimul commit, sau de la crearea depozitului git (în cazul în care nu există încă niciun commit), sau X reprezintă fișiere noi care până acum nu au fost adăugate în depozit. Ne putem imagina „staging area” ca pe un coș folosit de un om pentru a culege merele (schimbările din directorul de lucru, directorul depozitului) dintr-o livadă. Există mai multe coșuri pline puse unul lângă altul care formează istoria depozitului.
git commit -m "Test"
Această comandă înregistrează modificările adăugate cu „git add” în „staging area” ca o nouă versiune a dosarului în istoria dosarului și apoi golește „staging area” pregătind-o pentru noi modificări. În loc de „Test” se poate scrie orice șir de caractere care reprezintă o descriere a ultimelor modificări ce vor fi înregistrate, iar dacă se dorește chiar introducerea unui caracter „"” în interiorul mesajului de commit, se tastează „\"” în loc de „"”. Istoria dosarului poate fi văzută rulând comanda „git log”.
git log
Această comandă afișează jurnalul commit-urilor din depozitul directorului curent. O versiune a acestei comenzi care afișează jurnalul mai frumos în opinia mea este „git log --graph --color --decorate --all --date=relative”. Dacă vă place mai mult această afișare, o puteți folosi mai ușor printr-un alias creat cu următoarea comandă: „git config --global alias.mylog "log --graph --color --decorate --all --date=relative"”. Astfel veți putea folosi pentru aceeași funcție comanda „git mylog”.

În final, închei cu fluxul de lucru Git, tradus de aici:
1. modifici fișierele din directorul de lucru (depozitul Git);
2. „montezi” (în engleză „to stage”) fișierele, adăugând instantanee ale lor în aria de montare („staging area”);
3. faci un commit, care ia fișierele așa cum sunt ele în aria de montare și stochează acel instantaneu permanent în directorul Git („.git”).

Unde pot afla mai multe despre Git și unde pot cere ajutor?
Documentația oficială Git este extraordinar de bună, dar este în limba engleză. Dacă preferați limba română, cred că vi se va răspunde cu plăcere pe forumul Softpedia. Dacă aveți cunoștințe medii de limbă engleză puteți cere ajutorul pe site-uri precum StackOverflow.

Va urma.

Niciun comentariu:

Trimiteți un comentariu