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.
Først åbnes 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 ovenstående kommando.
Det anbefales dog at bruge Vim for nemmere at kunne 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 brancher:
<<<<<<< HEAD; markerer starten på ændringer fra den aktuelle branch (master);=======; adskiller ændringerne fra den aktuelle branch (HEAD) og dem fra den branch, der flettes;>>>>>>> feature/new-feature; markerer slutningen på ændringerne fra den branch, der flettes.
For at løse konflikten, vælg en af følgende muligheder:
- Behold ændringerne fra den aktuelle branch (
master); - Behold ændringerne fra den flettede branch (
feature/new-feature); - Rediger manuelt indholdet.
Rediger filen manuelt ved at kombinere ændringerne fra begge brancher 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 konfliktende afsnit
Dernæst kombineres 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 blev succesfuldt tilføjet til staging-området. Fortsæt nu med at committe den:
Endnu en gang åbnes standard teksteditoren (Vim i mit 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 trevejsfletning.
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.
Først åbnes 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 ovenstående kommando.
Det anbefales dog at bruge Vim for nemmere at kunne 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 brancher:
<<<<<<< HEAD; markerer starten på ændringer fra den aktuelle branch (master);=======; adskiller ændringerne fra den aktuelle branch (HEAD) og dem fra den branch, der flettes;>>>>>>> feature/new-feature; markerer slutningen på ændringerne fra den branch, der flettes.
For at løse konflikten, vælg en af følgende muligheder:
- Behold ændringerne fra den aktuelle branch (
master); - Behold ændringerne fra den flettede branch (
feature/new-feature); - Rediger manuelt indholdet.
Rediger filen manuelt ved at kombinere ændringerne fra begge brancher 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 konfliktende afsnit
Dernæst kombineres 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 blev succesfuldt tilføjet til staging-området. Fortsæt nu med at committe den:
Endnu en gang åbnes standard teksteditoren (Vim i mit 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 trevejsfletning.
Tak for dine kommentarer!