Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Slå Sammen Grener | Arbeide med Grener i Git
Git-Essensielt

Slå Sammen Grener

Sveip for å vise menyen

Forståelse av sammenslåing av grener

I Git er sammenslåing prosessen med å integrere endringer fra én gren inn i en annen. Den vanligste bruken er å slå sammen feature-grener inn i main-grenen (for eksempel main eller master). Dette sikrer at de nyeste funksjonene og feilrettingene blir inkludert i hovedkodebasen.

Grunnleggende arbeidsflyt for sammenslåing

Vis først de to siste commitene. Husk at du for øyeblikket er på feature/new-feature-grenen.

git log -n 2
De to siste commitene på feature-grenen

Som du kan se, er master-grenen én commit bak. Før du slår sammen, må du bytte til grenen der endringene skal integreres. Bytt til master-grenen og vis de to siste commitene på den:

git checkout master
git log -n 2
Bytter til master og viser de to siste commitene

Branchen master ligger faktisk én commit bak feature-branchen. For å slå dem sammen, bruk kommandoen git merge og spesifiser hvilken branch som skal flettes inn i den nåværende branchen. For eksempel, for å flette feature/new-feature-branchen inn i master, kjør:

git merge feature/new-feature
Fletting
Note
Merk

Meldingen som vises etter at kommandoen er kjørt inneholder følgende: Fast-forward, som angir at en fast-forward-fletting ble utført.

Du vil utforske de to typene sammenslåinger senere i dette kapittelet. Før det, se på de to siste commitene:

git log -n 2
De to siste commitene etter sammenslåing

Du er fortsatt på master-grenen, men den er nå oppdatert med feature-grenen, og begge grenene peker til samme commit.

Note
Merk

HEAD peker fortsatt til master-grenen fordi du befant deg på denne grenen da du utførte sammenslåingen.

Sammenslåingstyper

Det finnes to typer sammenslåingsoperasjoner i Git:

  • Fast-forward-sammenslåing;
  • Treveis-sammenslåing.

Fast-forward-sammenslåing

Sammenslåingen du utførte er en fast-forward-sammenslåing, som angitt i meldingen. Denne typen oppstår når alle commitene fra den nåværende utsjekkede grenen også finnes i grenen som slås sammen, noe som betyr at commit-historikkene ikke har forgreininger.

Se illustrasjonen nedenfor for en forklaring:

Med denne typen sammenslåing blir pekeren til den utsjekkede grenen ganske enkelt oppdatert til den siste commit-en.

Treveis sammenslåing

Hvis historikken til grenene har delt seg, det vil si at det etter en felles commit har blitt gjort nye commit-er separat på hver gren, utføres en treveis sammenslåing.

Begrepet "treveis" refererer til de tre versjonene som er involvert i sammenslåingen:

  • Versjonen til den nyeste felles forfaderen (commit);
  • Versjonen til den siste commit-en i den nåværende grenen (HEAD);
  • Versjonen til den siste commit-en i grenen som slås sammen.

Se på følgende illustrasjon av denne typen sammenslåing:

Slik fungerer en treveisfletting:

  1. Git identifiserer endringene som er gjort på hver av grenene etter den siste felles forfaderen;
  2. Hvis hver gren har endringer i ulike filer eller ulike deler av samme fil, vil Git automatisk flette endringene ved å kombinere dem i den resulterende commiten;
  3. Ellers vil det oppstå en flettekonflikt.
question mark

Velg alle typer fletting.

Velg alle riktige svar

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 4. Kapittel 4
some-alt