Cuprins
A ramură în Git este o ramură a depozitului nostru, este o modalitate de a genera o cale alternativă către calea principală. Acest lucru ne permite să explorăm noi soluții fără a fi nevoie să modificăm baza programului sau aplicației pe care o rulăm.Cu toate acestea, conceptul de ramură Nu este foarte clar când începem să folosim acest instrument care controlează versiunile proiectelor noastre. De obicei, în alte sisteme de control al versiunii, ramificațiile unui proiect cu acest concept nu sunt luate.
Mulți vor folosi deja Git și nu au acordat mai multă atenție ramuri, și într-un fel este de înțeles de când se manipulează un singur ramură iar dacă dezvoltarea este realizată de o singură persoană, nu ar trebui să existe nicio neplăcere.
Dar dacă această persoană dorește să testeze unele caracteristici experimentale care pot provoca eșecul proiectului sau pur și simplu afectează stabilitatea proiectului, unii vor spune că un furculiţă a proiectului și continuați experimentarea și dacă îmbunătățirea are succes, gândiți-vă la încorporarea a ceea ce s-a făcut în furcă în proiectul principal. Este într-adevăr o treabă cam lungă și inutilă.
În cazul de mai sus, pur și simplu creați un nou ramură în cadrul proiectului în cauză putem face toate modificările și experimentările dorite și la final pur și simplu făcând un combina sau fuziune cu ramură inițială sau principală, ne-am alăturat deja tuturor modificărilor noastre.
Un alt cazUn alt caz este atunci când avem o echipă de lucru în care două persoane care lucrează la același cod pot genera conflicte, de aici Git scoate la iveală puterea sa. Putem crea o structură de trei ramuri de exemplu, a sucursală pentru fiecare dezvoltator și a ramura de unificare. În acest fel, fiecare dezvoltator își poate prelua modificările și, atunci când simte că îi poate contribui la proiect, îi trimite la ramură de unificare și astfel cealaltă persoană sau ceilalți membri ai echipei le pot accesa.
Înțelegem deja motivele care ne determină să folosim ramuri și suntem familiarizați cu conceptul, acum vom vedea o parte care este vitală pentru utilizarea acestei caracteristici a Git și este de a pune un nume pentru a noastră ramură.
Numele sucursaleiPrin nume este că vom ști unde ne aflăm în acest moment, acest nume este total arbitrar, adică fiecare utilizator al Git îți poți numi ramuri după cum doriți în cadrul proiectului dumneavoastră. Obișnuit Git creeaza o ramură numit maestru În mod implicit, acesta este, în general, cel care conține versiunea stabilă și fără erori a proiectului, cu toate acestea îl putem redenumi sau chiar șterge dacă ne place, deși este recomandabil să nu o facem.
Deoarece putem folosi metacaracterele de căutare, le putem numi ramuri ierarhic, de exemplu, Imp_Bug / 89 sau Impl_Bug / 23. Acest lucru ne permite să le localizăm și să le organizăm cu teme. Să vedem cum ducem explicațiile la depozitul nostru de testare:
În acest caz avem un stăpân de ramură și am creat mai multe ramuri care sunt pentru rezolvarea erorilor, dacă executăm comanda ramură git în consolă Git în dosarul proiectului nostru vom obține o listă cu toate ramuri existenteSă vedem cum arată când îl rulăm:
Vedem apoi lista tuturor ramuri și într-o altă culoare vedem ramura în care ne aflăm în acel moment potrivit. Dar dacă avem multe ramuri și trebuie să filtrăm numai ramuri de rezolvare a erorilorEi bine, aici intră în joc căutarea cu comodine. De exemplu, dacă dorim să căutăm în acest fel, trebuie să facem o comandă similară cu următoarea:
git show-branch impl_bug / *
Să vedem cum arată acest lucru pe consola noastră:
Putem observa apoi că toate ramuri iar pe de o parte avem comentariul ultimului comite asta s-a făcut în ele.
Pentru că denumirea sucursalelor Este ceva total arbitrar și, în opinia utilizatorului, de multe ori există confuzie în cadrul unei echipe, de aceea putem urma câteva recomandări și cele mai bune practici, astfel vom fi utilizatori mai buni în cadrul instrumentului:
- Deși putem folosi simbolul / în numele sucursalelor noastre, acesta nu poate fi caracterul final al unui nume.
- Nu putem pune un punct (.) după o bară (/).
- Nu putem plasa două puncte la rând (… ) într-un nume.
- Nu trebuie să folosim caractere speciale (~ : ? * [ ) întrucât aceste caractere au un sens în sintaxa lui Git și pot fi predispuși la greșeli.
- De asemenea, nu ar trebui să avem spații goale sau caractere de control ASCII.
Dacă avem un lista ramurilor și suntem într-o ramură dar vrem să mergem la altul, trebuie doar să folosim următoarea comandă:
git checkout branch-name
Cu aceasta ne vom schimba ramură imediat, putând astfel lucra fără probleme la diferite secțiuni ale proiectului. Să vedem cum putem comutați ramuri în depozitul nostru de testare:
După cum am observat, este ceva destul de simplu, totuși, dacă facem o modificare în această ramură și nu o facem comite când încercăm să ne schimbăm cu altul, vom primi o eroare și Git Ne spune că trebuie să facem ceva, deoarece dacă nu, modificările se pot pierde:
Când se întâmplă această problemă, trebuie să facem un comite și apoi trecând la următorul ramură vom vedea conținutul celuilalt ramură.
Pentru a crea o ramură nouă vom continua să folosim comanda verifică, cu toate acestea, în acest caz trebuie să adăugăm -b opțiune, cu aceasta vom face o copie a sucursalei curente și vom genera una complet nouă. Să vedem cum arată pe consola noastră:
Observăm cum o dată a creat noua ramură imediat Git ne duce la el și putem începe să lucrăm direct.
Deși nu este foarte frecvent, există cazuri în care ne dorim ștergeți o ramură din depozitul nostru și Git ne permite să facem acest lucru, doar că nu putem șterge ramura în care ne aflăm în acest moment, pentru a evita neconcordanțele cu instrumentul. Pentru a efectua această operațiune este la fel de ușor ca aplicarea următoarei comenzi:
git branch -d branch-name
RestricțiiCu toate acestea, există unele restricții, de exemplu nu putem șterge un ramură ce e în neregulă cu ea comite că el ramură de unde încercăm să ștergem nu are, cu ea Git ajută la evitarea pierderii de informații, dacă vrem să ștergem o ramură a acestor caracteristici, trebuie să o facem combina în a noastră ramură sau mergeți la unul care chiar le are comite.
Să vedem cum arată executarea acestei comenzi în consolă:
La sfârșitul execuției sale vedem cum Git confirmă eliminarea ramurii corespunzătoare.
Există momente când am atins aceeași linie într-un fișier din două ramuri diferite, asta la momentul efectuării combina va genera un conflict pentru noi. Git Ne ajută stabilind o diferențiere a conflictului în cadrul fișierului, așa că atunci când îl rezolvăm trebuie să facem un nou comite și un nou combina. Diferențierea este afișată după cum urmează în fișierul în cauză:
orice linie <<<<<< >>>>>> dev: NewChange
Dacă dorim să rezolvăm conflictul, trebuie să ștergem conținutul Git, adică liniile cu <<<<< Da >>>>, așa că lăsăm schimbarea dorită sau unificăm totul, făcând deja acest lucru Git nu ne va mai prezenta eroarea și vom putea face combina obișnuit.
ImportantUnul dintre lucrurile importante de făcut este generarea unui nomenclator comun, adică stabiliți o structură de nume sub care ramuri în funcție de funcția sa din cadrul proiectului, astfel vom avea mult mai multă ordine, desigur, această nomenclatură trebuie să urmeze cele mai bune practici menționate la începutul tutorialului.
Cu aceasta terminăm acest tutorial, vom putea obține mult mai mult din depozitul nostru din Git și, împreună cu acesta, gestionăm echipa într-un mod excelent. Trebuie să avem deja baza acoperită pentru gestionarea ramuri în Git, cu aceasta putem face o administrare adecvată a modificărilor noastre, astfel încât să putem menține conflictele la un nivel minim, mai ales atunci când lucrăm în echipe de două sau mai multe persoane.V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv