Løsning av Flettekonflikter
Løse konflikter
I forrige kapittel oppstod det en flettingskonflikt, så nå er det på tide å løse den.
Først åpnes filen branch_learning.txt i Vim-editoren med følgende kommando:
Hvis Vim ikke er installert, kan du bruke en annen teksteditor som nano eller atom ved å erstatte vim med navnet på din editor i kommandoen over.
Det anbefales likevel å bruke Vim for enklere samsvar med trinnene som vises her.
Her er filen åpnet i Vim-editoren:
Nå vises konfliktmarkører som indikerer de motstridende seksjonene.
Disse markørene bruker piler og spesielle symboler for å fremheve forskjeller mellom brancher:
<<<<<<< HEAD; markerer starten på endringene fra nåværende branch (master);=======; skiller endringene fra nåværende branch (HEAD) og de fra branchen som flettes inn;>>>>>>> feature/new-feature; markerer slutten på endringene fra branchen som flettes inn.
For å løse konflikten, velg ett av følgende alternativer:
- Behold endringene fra nåværende branch (
master); - Behold endringene fra flettet branch (
feature/new-feature); - Rediger innholdet manuelt.
Rediger filen manuelt ved å kombinere endringene fra begge branchene ved å følge disse stegene:
1. Gå inn i redigeringsmodus
Gå først inn i insert-modus i Vim ved å trykke i.
Dette gjør det mulig å redigere teksten.
2. Rediger den konfliktfylte seksjonen
Deretter kombineres linjene fra begge grenene sekvensielt. Det resulterende innholdet i filen skal se slik ut:
3. Avslutt redigeringsmodus, lagre og avslutt
Trykk på Escape-tasten for å avslutte innsettingsmodus.
Skriv deretter :wq og trykk Enter for å lagre endringene og avslutte Vim:
Committe filen
Siden konfliktene er løst, legg til filen branch_learning.txt i staging area og sjekk statusen:
Filen ble endret og lagt til i staging-området. Fortsett nå med å committe den:
Igjen åpnes standard tekstredigerer (Vim i mitt tilfelle) med standard commit-melding angående sammenslåingen:
Gå inn i insert mode i Vim ved å trykke i, og endre meldingen ved å legge til linjen
Kept lines from both branches
for å beskrive hvordan konfliktene ble løst.
Her er den fullstendige commit-meldingen:
For å avslutte insert mode, lagre endringene og lukke Vim, trykk Escape-tasten, skriv deretter :wq og trykk Enter.
Commiten er vellykket, og flettekonflikten er nå løst.
Se nå på commit-historikken som en graf (--graph-flagg) med én linje per commit (--oneline-flagg):
Her kan du se den siste flette-committen sammen med den karakteristiske strukturen til en treveisfletting.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Can you explain what a three-way merge is?
How do I interpret the output of `git log --graph --oneline`?
What should I do if I see unexpected results in the commit graph?
Awesome!
Completion rate improved to 3.57
Løsning av Flettekonflikter
Sveip for å vise menyen
Løse konflikter
I forrige kapittel oppstod det en flettingskonflikt, så nå er det på tide å løse den.
Først åpnes filen branch_learning.txt i Vim-editoren med følgende kommando:
Hvis Vim ikke er installert, kan du bruke en annen teksteditor som nano eller atom ved å erstatte vim med navnet på din editor i kommandoen over.
Det anbefales likevel å bruke Vim for enklere samsvar med trinnene som vises her.
Her er filen åpnet i Vim-editoren:
Nå vises konfliktmarkører som indikerer de motstridende seksjonene.
Disse markørene bruker piler og spesielle symboler for å fremheve forskjeller mellom brancher:
<<<<<<< HEAD; markerer starten på endringene fra nåværende branch (master);=======; skiller endringene fra nåværende branch (HEAD) og de fra branchen som flettes inn;>>>>>>> feature/new-feature; markerer slutten på endringene fra branchen som flettes inn.
For å løse konflikten, velg ett av følgende alternativer:
- Behold endringene fra nåværende branch (
master); - Behold endringene fra flettet branch (
feature/new-feature); - Rediger innholdet manuelt.
Rediger filen manuelt ved å kombinere endringene fra begge branchene ved å følge disse stegene:
1. Gå inn i redigeringsmodus
Gå først inn i insert-modus i Vim ved å trykke i.
Dette gjør det mulig å redigere teksten.
2. Rediger den konfliktfylte seksjonen
Deretter kombineres linjene fra begge grenene sekvensielt. Det resulterende innholdet i filen skal se slik ut:
3. Avslutt redigeringsmodus, lagre og avslutt
Trykk på Escape-tasten for å avslutte innsettingsmodus.
Skriv deretter :wq og trykk Enter for å lagre endringene og avslutte Vim:
Committe filen
Siden konfliktene er løst, legg til filen branch_learning.txt i staging area og sjekk statusen:
Filen ble endret og lagt til i staging-området. Fortsett nå med å committe den:
Igjen åpnes standard tekstredigerer (Vim i mitt tilfelle) med standard commit-melding angående sammenslåingen:
Gå inn i insert mode i Vim ved å trykke i, og endre meldingen ved å legge til linjen
Kept lines from both branches
for å beskrive hvordan konfliktene ble løst.
Her er den fullstendige commit-meldingen:
For å avslutte insert mode, lagre endringene og lukke Vim, trykk Escape-tasten, skriv deretter :wq og trykk Enter.
Commiten er vellykket, og flettekonflikten er nå løst.
Se nå på commit-historikken som en graf (--graph-flagg) med én linje per commit (--oneline-flagg):
Her kan du se den siste flette-committen sammen med den karakteristiske strukturen til en treveisfletting.
Takk for tilbakemeldingene dine!