GIT filiāļu vadība un administrēšana

Satura rādītājs
A filiāle iekšā Git tā ir mūsu krātuves filiāle, tas ir veids, kā ģenerēt alternatīvu ceļu uz galveno ceļu. Tas ļauj mums izpētīt jaunus risinājumus, nemainot mūsu izmantotās programmas vai lietojumprogrammas bāzi.
Tomēr jēdziens filiāle Nav īsti skaidrs, kad mēs sākam izmantot šo rīku, kas kontrolē mūsu projektu versijas. Parasti citās versiju kontroles sistēmās projekta sekas ar šo koncepciju netiek ņemtas vērā.
Daudzi jau izmantos Git un viņi tam nav pievērsuši lielāku uzmanību filiāles, un savā ziņā tas ir saprotams kopš apstrādes ar vienu filiāle un, ja izstrādi veic viena persona, nevajadzētu radīt neērtības.
Bet ko darīt, ja šī persona vēlas pārbaudīt dažas eksperimentālas funkcijas, kuru dēļ viņa projekts var neizdoties vai vienkārši ietekmēt projekta stabilitāti, daži teiks, ka dakša projektu un turpiniet eksperimentēt, un, ja uzlabojums ir veiksmīgs, tad padomājiet par dakšiņā paveiktā iekļaušanu galvenajā projektā. Tas tiešām ir mazliet ilgs un nevajadzīgs darbs.
Iepriekš minētajā gadījumā vienkārši izveidojiet jaunu filiāle attiecīgā projekta ietvaros mēs varam veikt visas vēlamās izmaiņas un eksperimentus, un beigās vienkārši veicot a sapludināt vai saplūšana ar filiāle sākotnēji vai galvenokārt mēs jau būsim pievienojušies visām mūsu izmaiņām.
Cits gadījumsVēl viens gadījums ir tad, kad mums ir darba komanda, kurā divi cilvēki, kas strādā pie viena un tā paša koda, var radīt konfliktus Git izceļ savu spēku. Mēs varam izveidot struktūru trīs filiāles piemēram, a filiāle katram izstrādātājam un a apvienošanās filiāle. Tādā veidā katrs izstrādātājs var veikt savas izmaiņas un, ja uzskata, ka var tās ieguldīt projektā, nosūta tās uz filiāle apvienošanās un tādējādi otra persona vai citi komandas locekļi var tiem piekļūt.
Mēs jau saprotam iemeslus, kas mūs liek izmantot filiāles un mēs esam iepazinušies ar šo jēdzienu, tagad mēs redzēsim daļu, kas ir būtiska šīs funkcijas izmantošanai Git un ir nosaukt mūsu vārdu filiāle.
Filiāles nosaukumsPateicoties nosaukumam, mēs zināsim, kur mēs šobrīd atrodamies, šis vārds ir pilnīgi patvaļīgs, tas ir, katrs lietotājs Git vari nosaukt savu filiāles kā vēlaties savā projektā. Parasti Git izveidot a filiāle sauca meistars Pēc noklusējuma, un tas parasti ir tas, kas satur stabilu un kļūdu nesaturošu projekta versiju, tomēr mēs varam to pārdēvēt vai pat izdzēst, ja mums tā šķiet, lai gan nav ieteicams to darīt.
Tā kā mēs varam izmantot meklēšanas aizstājējzīmes, mēs varam nosaukt savu filiāles hierarhiski, piemēram, Imp_Bug / 89 vai Impl_Bug / 23. Tas ļauj mums tos atrast un sakārtot ar tēmām. Redzēsim, kā mēs nogādāsim paskaidrojumus mūsu testa krātuvē:
Šajā gadījumā mums ir a filiāles meistars un mēs esam izveidojuši vairākus filiāles kas paredzēti kļūdu novēršanai, ja izpildām komandu git filiāle konsolē Git mūsu projekta mapē mēs iegūsim sarakstu ar visiem esošās filiālesApskatīsim, kā tas izskatās, kad to palaižam:

Tad mēs redzam visu mūsu sarakstu filiāles un citā krāsā mēs redzam zaru, kurā atrodamies tajā īstajā brīdī. Bet ko tad, ja mums ir daudz filiāles un mums ir jāfiltrē tikai kļūdu risināšanas filiālesNu, šeit sākas aizstājējzīmju meklēšana. Piemēram, ja mēs vēlamies meklēt šādā veidā, mums ir jāizpilda komanda, kas līdzīga šim:
git show-branch impl_bug / *

Apskatīsim, kā tas izskatās mūsu konsolē:

Pēc tam mēs varam pamanīt, ka visas filiāles un vienā pusē mums ir pēdējā komentārs apņemties kas tajās tika izdarīts.
Tāpēc ka filiāļu nosaukšana Tas ir kaut kas pilnīgi patvaļīgs, un, pēc lietotāja domām, daudzas reizes komandā rodas neskaidrības, tāpēc mēs varam ievērot dažus ieteikumus un labāko praksi, tādējādi mēs būsim labāki rīka lietotāji:
  • Lai gan filiāļu nosaukumā varam izmantot simbolu /, tas nevar būt vārda pēdējais raksturs.
  • Mēs nevaram likt punktu (.) pēc slīpsvītras (/).
  • Mēs nevaram ievietot divus punktus pēc kārtas (… ) nosaukuma ietvaros.
  • Mēs nedrīkstam izmantot īpašas rakstzīmes (~ : ? * [ ) jo šīm rakstzīmēm ir nozīme sintaksē Git un viņi var būt pakļauti kļūdām.
  • Mums nedrīkst būt arī tukšas vietas vai vadības rakstzīmes ASCII.
Ja mēs ievērosim šīs vadlīnijas, mēs saglabāsim pareizu izmantošanu mūsu krātuvē, kā arī pārējie komandas locekļi pateiksies mums par to, ka atvieglojām viņu dzīvi.
Ja mums ir a filiāļu saraksts un mēs atrodamies a filiāle bet mēs vēlamies doties uz citu, mums vienkārši jāizmanto šāda komanda:
git izrakstīšanās filiāles nosaukums

Ar to mēs mainīsimies filiāle nekavējoties, tādējādi bez problēmām strādājot pie dažādām projekta sadaļām. Redzēsim, kā varam pārslēgt filiāles mūsu testēšanas krātuvē:

Kā mēs pamanījām, tas ir kaut kas pavisam vienkāršs, tomēr, ja mēs veicam izmaiņas šajā nozarē un neveicam to apņemties mēģinot mainīt uz citu, mēs saņemsim kļūdu un Git Tas mums saka, ka mums ir jādara kaut kas, jo pretējā gadījumā izmaiņas var tikt zaudētas:

Kad rodas šī problēma, mums jādara a apņemties un tad pāriet uz nākamo filiāle mēs redzēsim otra saturu filiāle.
Lai izveidotu jaunu filiāli, mēs turpināsim izmantot komandu izrakstītiestomēr šajā gadījumā mums jāpievieno -b variants, ar to mēs izveidosim pašreizējās filiāles kopiju un radīsim pilnīgi jaunu. Apskatīsim, kā tas izskatās mūsu konsolē:

Mēs pamanām, kā reiz izveidoja jaunu filiāli nekavējoties Git aizved mūs pie viņa, un mēs varam sākt strādāt tieši.
Lai gan tas nav ļoti bieži, ir gadījumi, kad mēs to vēlamies izdzēst filiāli no mūsu krātuves un Git ļauj mums to darīt, tikai mēs nevaram izdzēst filiāli, kurā mēs šobrīd atrodamies, lai izvairītos no neatbilstībām ar rīku. Lai veiktu šo darbību, ir tikpat vienkārši, kā lietot šādu komandu:
git filiāle -d filiāles nosaukums

IerobežojumiTomēr ir daži ierobežojumi, piemēram, mēs nevaram izdzēst a filiāle kas tam vainas apņemas ka viņš filiāle no kurienes mēs cenšamies izdzēst, tai nav, līdz ar to Git palīdz izvairīties no informācijas zuduma, ja mēs vēlamies izdzēst kādu no šīm īpašībām, mums tas jādara sapludināt mūsu filiāle vai dodieties uz tādu, kurā tādi ir apņemas.
Apskatīsim, kā izskatās šīs komandas izpilde konsolē:

Izpildes beigās mēs redzam, kā Git apstiprina atbilstošās filiāles likvidēšanu.
Ir reizes, kad failā esam pieskārušies tai pašai rindai divas dažādas filiāles, tas darīšanas laikā sapludināt tas mums radīs konfliktu. Git Tas mums palīdz, izveidojot konflikta diferenciāciju failā, tāpēc, risinot to, mums ir jāizveido jauns apņemties un jaunu sapludināt. Atšķirība attiecīgajā failā tiek parādīta šādi:
 jebkura rinda <<<<<< >>>>>> dev: NewChange 

Ja vēlamies atrisināt konfliktu, mums ir jāizdzēš tās saturs Git, tas ir, līnijas ar <<<<< Y >>>>, tāpēc mēs atstājam vēlamās izmaiņas vai apvienojam visu, to jau izdarot Git vairs nesniegs mums kļūdu, un mēs varēsim to izdarīt sapludināt parasti.
SvarīgsViena no lietām, kas ir svarīgi darīt, ir ģenerēt kopīga nomenklatūra, tas ir, izveidot nosaukumu struktūru, saskaņā ar kuru filiāles atkarībā no tā funkcijas projektā, tādā veidā mums būs daudz lielāka kārtība, protams, šai nomenklatūrai ir jāievēro apmācības sākumā minētā paraugprakse.
Pabeidzot šo apmācību, mēs varēsim iegūt daudz vairāk no mūsu krātuves Git un līdz ar to lieliski pārvaldīt mūsu komandu. Mums jau ir jāaptver bāze pārvaldībai filiāles iekšā Git, ar to mēs varam veikt adekvātu savu izmaiņu administrēšanu, lai līdz minimumam samazinātu konfliktus, it īpaši, ja strādājam divu vai vairāku cilvēku komandās.Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu
wave wave wave wave wave