Cosmin L. Neagu

Nivel: Mediu
Data ultimei modificări: 2014.08.29

Îndrumar Git

Git
După cum spuneam și în secțiunea de Introducere în Programare
orice programator trebuie neapărat să folosească o metodă de control a
versiunilor. În continuare vom lucra cu Git, fiind soluția cel mai
des folosită și printre cele mai bune (poate chiar cea mai bună).

# ~/.bashrc trebuie să conțină datele dv.
export GIT_AUTHOR_NAME="Cosmin L. Neagu"
export GIT_AUTHOR_EMAIL="cosmin@rohost.com"
export GIT_COMMITTER_NAME="Cosmin L. Neagu"
export GIT_COMMITTER_EMAIL="cosmin@rohost.com"

Într-un director ce conține fișierele proiectului curent putem folosi
următoarele comenzi pentru inițializare și pentru lucru local.
În acest moment repo-ul este doar local dar se poate ulterior conecta
la un server, pentru sincronizare.

# inițializare git repo
git init

# vizualizarea stării curente
git status

# adaugă toate fișierele, inclusiv din subdirectoare
git add .

# salvează toate modificările in baza de date locală
git commit -a -m "scurt mesaj informativ" 

Dacă dorim sincronizarea proiectului local cu un server extern putem
folosi următoarele comenzi (ex: GitHub - folosiți propriul username
în loc de clneagu și propriul proiect în loc de xxx.git):

git remote add origin git@github.com:clneagu/xxx.git
git push -u origin master

În acest moment repo-ul local este conectat cu cel de pe serverul
GitHub. De aici mai departe putem folosi următoarele comenzi pentru
sincronizare dinspre și către server:

# cere ultima versiune de pe server
git pull

# faceți toate modificările dorite

# urmărește toate fișierele noi
git add .

# salvează toate modificările in baza de date locală
git commit -a -m"mesaj informativ"

# salvează pe server toate modificările locale
git push

Scenariul de mai sus prezintă foarte pe scurt modul de lucru cu git.

Pentru comenzi mai avansate puteți urmări secțiunea Git+
și proiectul GitRepo.

Conținutul acestui site reflectă interese și preferințe personale. Nu sunt un expert în fiecare subiect atins. Nu prezint adevăruri ci perspective.

Email: cosmin (at) rohost.com

Social: Google+, Twitter, GitHub