Kuinka käyttää git -sulautumista

Dec 31, 2024
Programing

Git käyttää haaroita kehitysvirtojen eristämiseen, jotta vakaan vapautumishaaran saastuttamisesta estäisi. Työn tuominen haaraan päävirtaan tarkoittaa oksien yhdistämistä. Näin teet sen.

Mikä on yhdistäminen gitissä?
Valmistautuminen yhdistämään haara gitissä
Suorittamalla sulautuminen
Pikatoiminnan sulautumisen gitissä
Kuinka ratkaista yhdistämiskonfliktit gitissä
Kaikki sulautuu lopulta

Mikä on yhdistäminen gitissä?

Git on suunniteltu tekemään haarautumisesta yksinkertainen ja nopea. Päinvastoin kuin muut versionhallintajärjestelmät, haaroittuminen GIT: llä on triviaalia. Erityisesti monikehittäjäprojekteissa haarautuminen on yksi Gitin ydinorganisaation työkaluista.

Haarojen hiekkalaatikon uudet kehitystyöt, jotta koodia voidaan muokata tai lisätä vaikuttamatta muiden haarojen, etenkin pää- tai päähaaran, koodiin. Tämä sisältää yleensä koodipohjasi vakaan version.

Näiden muutosten eristäminen vakaasta koodiversiosta on täysin järkevää. Mutta ennemmin tai myöhemmin uusi koodi testataan, tarkistetaan ja kumileimat, jotka rullataan päähaaraan. Siinä vaiheessa sinun on yhdistettävä haarasi päähaaraan.

Oikeastaan haaroilla voi olla alavaarat, jotta saatat yhdistää haarasi johonkin muuhun haaraan päähaaran sijasta. Muista vain, että sulautuu aina ottamaan yhden haaran ja yhdistä se a kohde haara, mikä tahansa haara voi olla. Jos haluat yhdistää päähaaran toiseen haaraan, voit jopa tehdä sen.

Kuten useimmat GIT: n toiminnot, suoritat sulautumisen paikallisessa arkistossa ja työnnät ne etävarastoon.

Valmistautuminen yhdistämään haara gitissä

Meillä on pieni kehitysprojekti, jossa on paikallinen GIT -arkisto ja etä GIT -arkisto. Loimme haaran nimeltä “Bugfix14” “Master” -haarasta ja työskentelimme ratkaisun kanssa virheeseen.

Tuo työ on valmis, ja olemme testanneet koodimme. Kaikki toimii odotetusti. Haluamme rullata nämä muutokset päähaaraan niin, että korjauksemme on osa ohjelmiston seuraavaa julkaisua.

Ennen sulautumisen suorittamista on tehtävä pieni valmistelu. Meidän on varmistettava, että kohdesarja - tässä tapauksessa ”päähaara” - ja haara, johon aiomme sulautua siihen, ovat molemmat ajan tasalla.

  • ON BRACK BUGFIX14 : Tämä on nykyinen haaramme.
  • Haarasi on ajan tasalla 'Origin/Bugfix' -sovelluksella : Paikallisessa arkistomme haarassa on sama sitoutumishistoria kuin etävarastossa. Tämä tarkoittaa, että he ovat identtisiä.
  • ei mitään sitoutumista Vaihtoalueella ei ole muutoksia, joita ei ole tehty.
  • työpuu puhdas : Työhakemistossa ei ole vaihdettavia muutoksia.

Kaikki nämä osoittavat, että haara on ajan tasalla, ja olemme selkeitä edetä. Jos jokin näistä ilmoitti, että muutokset olisivat olemassa, meidän on laistettava ne, sitottava ne ja työnnettävä ne kaukosäätimeen. Jos joku muu olisi työskennellyt näiden tiedostojen parissa, meidän on ehkä vedettävä muutoksensa etävarastosta.

Haaran tarkistaminen, joka yhdistämme sulautumisprosessin yksinkertaistamiseen. Sen avulla voimme myös vahvistaa sen olevan ajan tasalla. Katsotaanpa päähaaraa.

Saamme samat vahvistukset siitä, että ”Master” -haara on ajan tasalla.

Liittyvät: Kuinka valita git -työnkulku & amp; Haarautumismalli, joka sopii joukkueellesi

Suorittamalla sulautuminen

”Bugfix14” -haara haarautui “Master” -haarasta. "Master" -haaraan on sitoutunut sen jälkeen, kun “Bugfix14” -haara on luotu. ”Bugfix14” -haaraan on tehty pari sitoumusta.

Olemme varmistaneet, että kaksi sivuliikettämme ovat ajan tasalla, ja olemme tarkistaneet ”Master” -haaran. Voimme antaa komennon yhdistää “BugFix14” -haara “Master” -haaraan.

Yhdistäminen tapahtuu. ”Bugfix14” -haara on edelleen olemassa, mutta nyt haarassa tehdyt muutokset on sulautettu ”päähaaraksi”.

Tässä tapauksessa yhdistämiskomento suorittaa a kolmisuuntainen yhdistäminen . Haaroja on vain kaksi, mutta mukana on kolme sitoumusta. Ne ovat kummankin haaran pää ja kolmas sitoumus, joka edustaa itse sulautumista.

Päivittääksesi etävarastomme, voimme käyttää git -työntö komento.

Jotkut ihmiset mieluummin poistavat sivuhaarat, kun he ovat yhdistäneet heidät. Toiset huolehtivat säilyttääkseen heidät projektin todellisesta kehityshistoriasta.

Jos haluat poistaa haaran, voit tehdä niin käyttämällä git -haara komento -dd (Poista) vaihtoehto.

-Lla Poista haara Käytä etävarastossa tätä komentoa:

Sinulla on lineaarinen sitoutumishistoria, mutta se ei ole todellinen historia.

Liittyvät: Kuinka poistaa git -haarat paikallisissa ja etävarastoissa

Pikatoiminnan sulautumisen gitissä

Jos et ole tehnyt mitään sitoutumista “Master” -haaraan, historiasi näyttää tältä. Se näyttää myös tästä, jos sinulla on katkaistu Kehityshaaroasi niin, että se on kiinnittynyt ”päähaaran” loppuun.

Koska “Master” -haarassa ei ole sitoumuksia, yhdistääksesi “Bugfix15” -haaran, kaikki Git on tehtävä, on osoittaa “Master” -pääosoitin “Bugfix15” -haaran viimeiseen sitoutumiseen.

Git suorittaa nopeasti eteenpäin sulautumisen Aina kun se voi . Jos sitoutuu ”päähaaralle” tarkoittaen, että nopeaa sulautumista ei ole mahdollista, Git käyttää a kolmisuuntainen yhdistäminen .

Et voi pakottaa Nopeasti eteenpäin yhdistäminen-se ei ehkä ole mahdollista-mutta voit julistaa, että se tulee olemaan nopeasti eteenpäin sulautuminen tai ei mitään. On olemassa vaihtoehto, joka kehottaa Gitiä käyttämään nopeaa sulautumista, jos se pystyy, mutta olemaan kolmisuuntaista sulautumista, jos se ei voi. Vaihtoehto on -vain (vain eteenpäin yhdistäminen).

Tämä yhdistää “Bugfix15” -haaran “Master” -haaraan, mutta vain, jos nopeasti eteenpäin sulautuminen on mahdollista.

Tässä tapauksessa ”päähaara” on ollut sitoumuksia, joten eteenpäin suuntautuva sulautuminen ei ole mahdollista.

Kuinka ratkaista yhdistämiskonfliktit gitissä

Jos samat osat samasta tiedostosta on muutettu molemmissa haaroissa, haaroja ei voida yhdistää. Ihmisten vuorovaikutus tarvitaan ristiriitaisten muokkausten ratkaisemiseksi.

Täällä olemme tehneet muutoksia tiedostoon nimeltä “Rot.c” nimeltään “Bugfix17” -niminen haara, jonka haluamme sulautua “Master” -haaraan. Mutta “Rot.c” on muutettu myös “Master” -haarassa.

Kun yritämme yhdistää sen, saamme varoituksen siitä, että konflikteja on. Git luettelee ristiriitaiset tiedostot ja kertoo, että yhdistäminen epäonnistui. Voimme palata kokonaan ulos käyttämällä --keskeyttää vaihtoehto:

Mutta sulautumisen ratkaiseminen ei ole niin pelottavaa kuin miltä se kuulostaa. Git on tehnyt jonkin verran työtä auttaaksemme meitä. Jos muokkaamme yhtä ristiriitaista tiedostoja - tapauksessamme, meillä on vain sellainen - löydämme meille korostetut ristiriitaiset koodiosat.

Jokaista konfliktia rajoittaa seitsemän vähemmän merkkiä ” & lt; & lt; & lt; & lt; & lt; ”Ja seitsemän suurempaa hahmoa" & gt; & gt; & gt; & gt; & gt; "Seitsemällä on merkitsevää merkkejä" ======= " heidän välillään.

  • Equals -merkkien yläpuolella oleva koodi on yhdistämäsi haarasta luona .
  • Tasa -arvoinen merkki on koodi on haarasta, jonka yrität yhdistää .

Voit helposti etsiä yhtä seitsemän merkin sarjaa ja siirtyä konfliktista konflikteihin tiedostosi kautta. Jokaisesta konfliktista sinun on valittava, mitkä muokkaukset aiot pitää. Sinun on muokattava hylkäämäsi koodi ja Git on lisännyt seitsemän merkin linjat.

Aiomme pitää koodin “BugFix17” -haarasta. Muokkauksen jälkeen tiedosto näyttää tältä.

Voimme nyt jatkaa sulautumista. Mutta huomaa, käytämme tehdä käsky tehdä niin, ei yhdistää komento.

Teemme muutoksen järjestämällä tiedoston ja sitomalla sen tavalliseen tapaan. Tarkistamme tilan ennen kuin teemme lopullisen sitoutumisen.

Yhdistäminen on valmis. Voimme nyt työntää tämän etävarastoomme.

Liittyvät: Kuinka korjata, muokata tai kumota git sitoutuu (muuttamaan Git -historiaa)

Kaikki sulautuu lopulta

Kaikki oksat on lopulta sulautettava, jotta muutokset eivät ole orvoja ja unohdettuja.

Haarojen yhdistäminen on helppoa, mutta konfliktien käsitteleminen voi olla monimutkaista kiireisissä, suurissa joukkueissa. Konfliktien ratkaiseminen voi edellyttää jokaiselta kehittäjältä panosta vain selittääkseen, mitä heidän koodinsa tekee ja miksi he tekivät muutoksensa. Sinun on ymmärrettävä se, ennen kuin voit tehdä tietoisen päätöksen siitä, mitkä muokkaukset pidetään.

  • Kuinka nimetä haara uudelleen Gitissä
  • Kuinka etähaaro saadaan
  • Kuinka varata muutokset gitissä
  • Kuinka vaihtaa oksia githubissa
  • Git Rebase: Kaikki mitä sinun tarvitsee tietää
  • OnePlus 11 on täällä, mutta karkealla aloituksella
  • Microsoft Edge saa AI -chatin ja uuden ilmeen Windowsissa
  • Parhaat iPhone -faneiden korvakuulokkeet saavuttivat vain alimman hinnan

Programing - Suosituimmat artikkelit

Kuinka nimetä haara uudelleen Gitissä

Programing Dec 19, 2024

Haaroittuminen on triviaalinen harjoitus gitissä. Valitettavasti triviaalit tehtävät saavat harvoin asianmukaista huomiota ja virheitä tapahtuu. Jos olet nimennyt haaraksi väärin, se on n..


Luokat