Løsning af Fletningskonflikter
Løsning af konflikter
I det forrige kapitel opstod der en sammenfletningskonflikt, så nu er det tid til at løse den.
Åbn først filen branch_learning.txt i Vim-editoren ved at bruge følgende kommando:
Hvis Vim ikke er installeret, kan du bruge en anden teksteditor såsom nano eller atom ved at erstatte vim med navnet på din editor i kommandoen ovenfor.
Det anbefales dog at bruge Vim for nemmere at følge trinnene her.
Her er filen åbnet i Vim-editoren:
Nu kan du se konfliktmarkørerne, der angiver de modstridende sektioner.
Disse markører bruger pile og specielle symboler til at fremhæve forskelle mellem grene:
<<<<<<< HEAD: markerer starten på ændringer fra den aktuelle gren (master);=======: adskiller ændringerne fra den aktuelle gren (HEAD) og dem fra den gren, der flettes;>>>>>>> feature/new-feature: markerer slutningen på ændringerne fra den gren, der flettes.
For at løse konflikten skal du vælge en af følgende muligheder:
- Behold ændringerne fra den aktuelle gren (
master); - Behold ændringerne fra den flettede gren (
feature/new-feature); - Rediger manuelt indholdet.
Rediger filen manuelt ved at kombinere ændringerne fra begge grene ved hjælp af følgende trin:
1. Gå i redigeringstilstand
Start med at gå i insert-tilstand i Vim ved at trykke på i.
Dette gør det muligt at redigere teksten.
2. Rediger det konfliktfyldte afsnit
Kombiner derefter linjerne fra begge grene sekventielt. Det resulterende indhold af filen skal se således ud:
3. Afslut redigeringstilstand, gem og afslut
Tryk på Escape-tasten for at afslutte indsætningstilstand.
Skriv derefter :wq og tryk på Enter for at gemme ændringerne og afslutte Vim:
Commit af filen
Da konflikterne er løst, tilføj filen branch_learning.txt til staging-området og tjek status:
Filen blev ændret og tilføjet korrekt til staging-området. Fortsæt nu med at committe den:
Endnu en gang åbnes standardteksteditoren (Vim i dette tilfælde) med standard commit-beskeden vedrørende sammenfletningen:
Gå i insert mode i Vim ved at trykke på i, og rediger derefter beskeden ved at tilføje linjen
Kept lines from both branches
for at beskrive, hvordan konflikterne blev løst.
Her er den komplette commit-besked:
For at afslutte insert mode, gemme ændringerne og lukke Vim, tryk på Escape-tasten, skriv derefter :wq og tryk på Enter.
Committen er gennemført, og sammenfletningskonflikten er nu løst.
Lad os nu se på vores commit-historik som en graf (--graph flag) med én linje pr. commit (--oneline flag):
Her kan du se den seneste merge-commit sammen med den karakteristiske struktur af et trevejs-merge.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 3.57
Løsning af Fletningskonflikter
Stryg for at vise menuen
Løsning af konflikter
I det forrige kapitel opstod der en sammenfletningskonflikt, så nu er det tid til at løse den.
Åbn først filen branch_learning.txt i Vim-editoren ved at bruge følgende kommando:
Hvis Vim ikke er installeret, kan du bruge en anden teksteditor såsom nano eller atom ved at erstatte vim med navnet på din editor i kommandoen ovenfor.
Det anbefales dog at bruge Vim for nemmere at følge trinnene her.
Her er filen åbnet i Vim-editoren:
Nu kan du se konfliktmarkørerne, der angiver de modstridende sektioner.
Disse markører bruger pile og specielle symboler til at fremhæve forskelle mellem grene:
<<<<<<< HEAD: markerer starten på ændringer fra den aktuelle gren (master);=======: adskiller ændringerne fra den aktuelle gren (HEAD) og dem fra den gren, der flettes;>>>>>>> feature/new-feature: markerer slutningen på ændringerne fra den gren, der flettes.
For at løse konflikten skal du vælge en af følgende muligheder:
- Behold ændringerne fra den aktuelle gren (
master); - Behold ændringerne fra den flettede gren (
feature/new-feature); - Rediger manuelt indholdet.
Rediger filen manuelt ved at kombinere ændringerne fra begge grene ved hjælp af følgende trin:
1. Gå i redigeringstilstand
Start med at gå i insert-tilstand i Vim ved at trykke på i.
Dette gør det muligt at redigere teksten.
2. Rediger det konfliktfyldte afsnit
Kombiner derefter linjerne fra begge grene sekventielt. Det resulterende indhold af filen skal se således ud:
3. Afslut redigeringstilstand, gem og afslut
Tryk på Escape-tasten for at afslutte indsætningstilstand.
Skriv derefter :wq og tryk på Enter for at gemme ændringerne og afslutte Vim:
Commit af filen
Da konflikterne er løst, tilføj filen branch_learning.txt til staging-området og tjek status:
Filen blev ændret og tilføjet korrekt til staging-området. Fortsæt nu med at committe den:
Endnu en gang åbnes standardteksteditoren (Vim i dette tilfælde) med standard commit-beskeden vedrørende sammenfletningen:
Gå i insert mode i Vim ved at trykke på i, og rediger derefter beskeden ved at tilføje linjen
Kept lines from both branches
for at beskrive, hvordan konflikterne blev løst.
Her er den komplette commit-besked:
For at afslutte insert mode, gemme ændringerne og lukke Vim, tryk på Escape-tasten, skriv derefter :wq og tryk på Enter.
Committen er gennemført, og sammenfletningskonflikten er nu løst.
Lad os nu se på vores commit-historik som en graf (--graph flag) med én linje pr. commit (--oneline flag):
Her kan du se den seneste merge-commit sammen med den karakteristiske struktur af et trevejs-merge.
Tak for dine kommentarer!