@CodenlynDamilola Ale
Controlul versiunilor a devenit o parte importantă a procesului de dezvoltare software. Controlul versiunilor ajută la înregistrarea modificărilor aduse unui proiect de-a lungul timpului, astfel încât să puteți reaminti versiuni specifice mai târziu. Voi vorbi despre GitHub.
Când am început să lucrez ca dezvoltator, am început să folosesc GitHub deoarece toată lumea spunea că este necesar ca dezvoltatorii să aibă codul lor online. Ținând cont de acest lucru, l-am privit ca pe un loc în care să îmi stochez toate proiectele în cazul în care sistemul meu se blochează, aș putea să le descarc înapoi.
Distractiv, nu-i așa?
Mai târziu, mi-am dat seama că GitHub este mai mult decât atât, este un loc în care pot vizualiza toate progresele pe care le-am făcut în fiecare etapă de construire a proiectului sau software-ului meu. De asemenea, se întâmplă să fie un loc unde toată lumea din întreaga lume poate contribui la proiecte cu idei diferite.
Pe la jumătatea anului, când am început la Microverse, am făcut cunoștință cu GitHub Flow. GitHub Flow vă încurajează să creați ramuri de caracteristici pentru fiecare caracteristică a software-ului dumneavoastră. Când considerați că software-ul sau proiectul dvs. este gata pentru a fi vizualizat sau utilizat, creați o cerere de tragere și fuzionați la ramura principală.
Fain, nu-i așa?
clone the project
în depozitul dvs. local.
cd
în depozit
verificați ramura pe care vă aflați în prezent
.
Creați un nou
feature branch
Începeți să lucrați la caracteristica dvs. și când ați terminat,
add
,
commit
și
push
la ramura caracteristică
Veți la depozitul dvs. la distanță pe GitHub și creați un pull request și fuzionați atunci când considerați că caracteristica este finalizată
În acest fel puteți vedea toate caracteristicile pe care le-ați creat și ce ați adăugat în fiecare fază. Pe măsură ce am progresat, mi-am dat seama că ramura master era în principal pentru producție și în momentul în care fuzionezi o cerere de extragere spui că acea caracteristică este gata să fie folosită sau vizualizată de toată lumea.
Atunci am ajuns la cunoștința că GitHub flow funcționează perfect pentru proiecte mici, dar dacă am un proiect cu mai multe caracteristici importante și folosesc GitHub flow, spun indirect că toate caracteristicile care sunt fuzionate în ramura principală sunt gata pentru producție, dar dacă ne gândim bine, oare sunt?
Lansarea unei singure caracteristici pentru un proiect cu multe caracteristici nu are sens și aici intervine Git Flow. Este foarte asemănător cu GitHub Flow, dar introduce un mod mai bun de a lucra cu controlul versiunilor.
În Git Flow, creăm o ramură de dezvoltare și apoi facem din ramura de dezvoltare ramura implicită până când suntem gata pentru producție. În acest fel, toate ramurile de caracteristici sunt create din ramura de dezvoltare și fuzionate în ramura de dezvoltare atunci când sunt finalizate.
Este logic, nu-i așa? Acum, reușesc să fuzionez în ramura principală doar atunci când consider că software-ul meu este pregătit pentru producție cu toate caracteristicile adăugate.
După clonarea depozitului dvs., Creați o ramură
development
Verificați la ce ramură lucrați în prezent
Încercați să adăugați un fișier, poate un fișier HTML, astfel încât să puteți actualiza depozitul dvs. la distanță cu ramura de dezvoltare.
Vezi la depozitul tău la distanță pe GitHub , mergi la setări, faceți clic pe ramuri și faceți din dezvoltare ramura implicită
Acum, puteți să creați ramuri de caracteristici din ramura
development
, să creați o cerere de tragere din aceasta și să fuzionați în ramura
development
.
Când toate funcțiile tale sunt gata, urmați aceiași pași de mai sus, faceți din nou masterul implicit, creați o cerere de tragere de la dezvoltare la master și unificați pentru producție.
Știu că a fost o lectură lungă, dar am încredere că până acum ar trebui să știm când să folosim GitHub flow sau Git Flow.
Mulțumesc că ați citit.
Tags
Creați-vă un cont gratuit pentru a vă debloca experiența de lectură personalizată.