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

bookFlette Grener

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. Merk at du for øyeblikket befinner deg på feature/new-feature-grenen.

To siste commit på feature-grenen

Som du kan se, ligger 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:

Bytter til master og viser de to siste commitene

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

Sammenslåing
Note
Merk

Meldingen som vises etter å ha kjørt kommandoen inneholder følgende: Fast-forward, som angir at en fast-forward-sammenslåing ble utført.

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

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 var på denne grenen da du utførte sammenslåingen.

Flettetyper

Det finnes to typer flettinger i Git:

  • Fast-forward-fletting;
  • Treveis-fletting.

Fast-forward-fletting

Flettingen du utførte er en fast-forward-fletting, som angitt i meldingen. Denne typen oppstår når alle commitene fra den utsjekkede grenen også finnes i grenen som flettes inn, altså at commit-historikkene ikke har forgreinet seg.

Se følgende illustrasjon for en forklaring:

Med denne typen fletting blir pekeren til den utsjekkede grenen ganske enkelt oppdatert til siste commit.

Treveis-fletting

Men hvis historikken til grenene har forgreinet seg, altså at det etter en felles commit har blitt gjort nye commiter separat på hver gren, utføres en treveis-fletting.

Begrepet "treveis" viser til de tre versjonene som er involvert i flettingen:

  • versjonen til den nyeste felles forfaderen (commit);
  • versjonen til siste commit i nåværende gren (HEAD);
  • versjonen til siste commit i grenen som flettes inn.

Se følgende illustrasjon av denne typen fletting:

Slik fungerer en treveisfletting:

  1. Git identifiserer endringene som er gjort på hver av grenene etter siste felles forfader;
  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.

Select the correct answer

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

Suggested prompts:

What is the difference between a fast-forward merge and a three-way merge?

Can you explain what a merge conflict is and how to resolve it?

Can you give an example of when a three-way merge would occur?

Awesome!

Completion rate improved to 3.57

bookFlette 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. Merk at du for øyeblikket befinner deg på feature/new-feature-grenen.

To siste commit på feature-grenen

Som du kan se, ligger 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:

Bytter til master og viser de to siste commitene

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

Sammenslåing
Note
Merk

Meldingen som vises etter å ha kjørt kommandoen inneholder følgende: Fast-forward, som angir at en fast-forward-sammenslåing ble utført.

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

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 var på denne grenen da du utførte sammenslåingen.

Flettetyper

Det finnes to typer flettinger i Git:

  • Fast-forward-fletting;
  • Treveis-fletting.

Fast-forward-fletting

Flettingen du utførte er en fast-forward-fletting, som angitt i meldingen. Denne typen oppstår når alle commitene fra den utsjekkede grenen også finnes i grenen som flettes inn, altså at commit-historikkene ikke har forgreinet seg.

Se følgende illustrasjon for en forklaring:

Med denne typen fletting blir pekeren til den utsjekkede grenen ganske enkelt oppdatert til siste commit.

Treveis-fletting

Men hvis historikken til grenene har forgreinet seg, altså at det etter en felles commit har blitt gjort nye commiter separat på hver gren, utføres en treveis-fletting.

Begrepet "treveis" viser til de tre versjonene som er involvert i flettingen:

  • versjonen til den nyeste felles forfaderen (commit);
  • versjonen til siste commit i nåværende gren (HEAD);
  • versjonen til siste commit i grenen som flettes inn.

Se følgende illustrasjon av denne typen fletting:

Slik fungerer en treveisfletting:

  1. Git identifiserer endringene som er gjort på hver av grenene etter siste felles forfader;
  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.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 4
some-alt