Uvod v GIT Cherry-pick
V tem članku bomo podrobneje spoznali GIT Cherry-pick. Obstaja veliko programerjev, ki delajo na istem razvoju programske opreme iz različnih koncev sveta. Kako potem upravljati kode? Kako bodo drugi razumeli, katere spremembe so naredili? Kako zavezati kode in vzdrževati različne različice? Kako združiti kode?
Za reševanje teh težav je GIT prišel v svet razvoja. GIT je izjemen sistem upravljanja izvorne kode (SCM) in distribucijski sistem za nadzor različic. GIT je ustvaril Linux Torvald, oseba, ki je razvila Linuxovo jedro. Očitno gre za odprtokodno orodje, kjer lahko vsak programer prispeva k izdelavi dela programske opreme od koder koli na svetu.
GIT ima veliko funkcij. Lahko ima več vej. Razvijalec lahko napiše kode, potem ko ustvari svojo vejo v lokalnem sistemu in jo združi z glavno vejo ali drugimi vejami oddaljenega skladišča GIT.
Kaj je GIT Cherry-pick?
Predstavljajte si, da se projektno delo nadaljuje s pisanjem scenarija o zgodovini in razvoju mobilnih telefonov. Torej, veliko ljudi dela na istem projektu in vsi delajo ločeno. Vendar bo na koncu vsak scenarij sestavljen skupaj.
Zdaj član A piše o Apple telefonih in nenadoma spozna, da je lahko boljše. Torej je o zadevi obvestil ostale člane skupine, ki delajo na istem projektu. Drugi član X mu je rekel, da piše scenarij na telefonih Android, in prosil člana A, naj ga pogleda.
Nato je član A preučil scenarij soigralca in ugotovil, da so nekateri deli enaki z nekaj spremembami, ki so res dobre. Zato je te spremembe češnjevo izbral in prilepil po svojem scenariju. To je isto, kot so v GIT-u imenovali češnjev kramp v industriji kodiranja programske opreme.
Git-cherry-pick je močan ukaz git in nabiranje češenj je postopek, s katerim prevzamete zavezo iz veje in jo uporabite v neki drugi veji. Z enostavnimi besedami lahko obstaja več vej, kjer razvijalci zavežejo svoje kode. Zdaj naj bi en razvijalec svoje kode zavezal v veji A, vendar je kode v veji B storil po pomoti. Takrat lahko češnjev nabor preklopi nazaj na pravilno vejo.
Uporabite spodnji ukaz (v sistemu Unix), da poznate različne možnosti za git-cherry-pick,
Ukaz:
$man git-cherry-pick
Skladnja za ukaz cherry pick,
Sintaksa:
git cherry-pick (–edit) (-n) (-m parent-number) (-x)
Ko uporabljamo GIT Cherry-pick?
Git-cherry-pick je koristno orodje, vendar ni najboljša praksa za ves čas. git-cherry-pick lahko uporabimo v naslednjih scenarijih,
- Da bi bilo pravilno, če se je slučajno zgodil zaplet v drugi veji.
- Prednostne tradicionalne združitve
- Če želite uporabiti spremembe v obstoječi zavezi.
- Podvojena zaveza
- Odpravljanje napak
Kako deluje GIT Cherry-pick?
Napako, ki jo najdemo v kodi v proizvodnem okolju, je treba implementirati. Ko je sprememba izvedena in odpravljena napaka, je zdaj čas, da to kodo spremenimo v razvojno okolje, tako da se v prihodnosti napaka ne bo več pojavljala v proizvodnem okolju.
Prva možnost je preprost spajanje git in je idealna rešitev, če deluje. Vendar pa v proizvodnem okolju obstajajo tudi druge spremembe, ki jih med združevanjem ni mogoče vrniti v razvojno okolje. In v tem primeru je češnjeva izbira pravilna možnost.
Cherry-pick prinaša tisto zavezo, ki je bila narejena samo za odpravljanje napak. Drugih obveznosti ne izbere.
Tukaj je ilustracija,
Slika 1: G in H sta podružnici proizvodnje. Zaveže se razvojna panoga od A do F. Težava je v panogi Proizvodnja. V dokumentu H je določen popravek, ki ga je treba uporabiti v podružnici za razvoj, vendar zaveza G ni potrebna.
Slika 2: Zdaj je oznaka H nabrana na češnji na veji Razvoj in rezultat je H '. Spremembe G zaveze niso vključene v področje razvoja.
Kako uporabiti GIT Cherry-pick s primerom?
Recimo, da imamo dve veji (master in new_feature) (ukaz, ki se uporablja za ogled veje veje-git)
Z zavezo smo se (označeno) v veji nove_fete po pomoti. (ukaz je uporabljen za ogled posnetega dnevnika-log-git)
Vendar naj bi bilo le v glavni veji. Najprej kopirajte označeno SHA v beležko.
Zdaj bomo z ukazom git-cherry-pick premaknili to zavezo v glavno vejo, pred tem pa moramo preklopiti na glavno vejo (ukaz, ki se uporablja za preklapljanje blagajne veje git <ime veje > )
Zdaj lahko vidimo isto zavezo, ki je na voljo v glavni veji (ukaz used-git log)
Za več primerov ukazov git cherry-pick si oglejte spodnjo povezavo,
https://git-scm.com/docs/git-cherry-pick
Pomembne stvari, ki si jih morate zapomniti
Tri stvari si morate zapomniti, ko uporabljate češnjev nabiralnik in delate v timu.
1. standardizirati sporočilo o zavezi: Bolje je uporabiti standardizirano sporočilo o zavezi in -x, če se bomo odločili iz javne podružnice.
git cherry-pick -x
Tako se boste v prihodnosti izognili združevanju konfliktov.
2. kopirajte prek beležk: včasih nekateri češnjevi beležki beležijo, ko pa zaženemo češnjev, beležk ne kopiramo. Zato ga je bolje uporabiti.
git notes copy
3. C herry-pick več zapovedi, če so le linearne: Želimo, da izberemo več elementov, kot so G, H (Slika 1), če so linearni, potem uporabite le spodnji ukaz,
git cherry-pick G^..H
Zaključek
Recimo, da želimo pobrati določeno zavezo iz druge veje in se prijaviti na trenutno podružnico, tu so priporočeni koraki,
1. Poiščite hash, ki ga je treba najprej nabrati češnjev.
2. Pojdite na ciljno podružnico.
3. git cherry-pick -x
Rešite konflikte, če se zgodijo. Če so v prvotnem dokumentu zapisane opombe, jih je treba kopirati.
git notes copy
Priporočeni članki
To je vodnik za GIT Cherry-pick. Tukaj razpravljamo o njegovem delovanju in kako uporabljati git češnjev nabiralnik s podrobnimi primeri. Če želite izvedeti več, si oglejte tudi naslednje članke -
- Git Orodja
- Git terminologija
- Oznaka Git Checkout
- Kaj je Git Branch?