Yhdistämisristiriitojen Ratkaiseminen
Konfliktien korjaaminen
Edellisessä luvussa kohtasimme yhdistämiskonfliktin, joten nyt on aika korjata se. Avataan ensin branch_learning.txt
-tiedosto Vim-editorilla seuraavalla komennolla:
Jos sinulla ei ole Vim-editoria asennettuna, voit käyttää muita tekstieditoreita, kuten nano tai atom (korvaa vim
editorisi nimellä yllä olevassa komennossa). Suosittelemme kuitenkin käyttämään Vim-editoria, sillä sen avulla ohjeiden seuraaminen on huomattavasti helpompaa.
Tältä tiedostomme näyttää avattuna Vim-editorissa:
Nyt näemme merkinnät, jotka osoittavat ristiriitaiset kohdat. Nämä merkinnät esitetään nuolilla ja erikoismerkeillä korostaen eri haarojen muutoksia. Konfliktimerkinnät ovat seuraavat:
<<<<<<< HEAD
: Ilmaisee nykyisen haaran (tässä tapauksessamaster
) muutosten alun;=======
: Erottelee nykyisen haaran (HEAD) muutokset yhdistettävän haaran muutoksista;>>>>>>> feature/new-feature
: Merkitsee yhdistettävän haaran muutosten lopun.
Konfliktit voidaan ratkaista valitsemalla joko nykyisen haaran (master
) muutokset, yhdistettävän haaran (feature/new-feature
) muutokset tai muokkaamalla muutokset manuaalisesti.
Muokataan muutokset manuaalisesti yhdistämällä molempien haarojen muutokset seuraavien vaiheiden mukaisesti:
1. Siirry muokkaustilaan
Ensin täytyy siirtyä insert (muokkaus) -tilaan Vim-editorissa painamalla i
. Tämä mahdollistaa tekstin muokkaamisen.
2. Muokkaa ristiriitaista osiota
Seuraavaksi yhdistetään molempien haarojen rivit peräkkäin, jolloin tiedoston lopullinen sisältö on seuraava:
3. Poistu muokkaustilasta, tallenna ja sulje:
Poistuaksesi insert-tilasta, paina Escape-näppäintä. Tämän jälkeen tallenna muutokset ja poistu kirjoittamalla :wq
ja painamalla Enter-näppäintä:
Tiedoston kommitointi
Koska ristiriidat on ratkaistu, lisätään nyt branch_learning.txt
staging-alueelle ja tarkistetaan tila:
Tiedostoa on muokattu ja se on lisätty staging-alueelle. Voimme nyt jatkaa kommitointiin:
Jälleen kerran oletustekstieditori avautuu (Vim tässä tapauksessa) oletuskommitviestin kanssa, joka liittyy yhdistämiseen:
Siirry insert-tilaan Vimissä painamalla i
ja muokkaa tätä viestiä lisäämällä seuraava rivi: Kept lines from both branches
määrittääksesi, miten ratkaisimme konfliktit. Tässä on koko commit-viesti:
Poistuaksesi insert-tilasta, tallenna muutokset ja poistu Vimistä painamalla Escape-näppäintä, kirjoita :wq
ja paina Enter-näppäintä.
Commit onnistui ja yhdistämiskonflikti on nyt ratkaistu.
Tarkastellaan nyt commit-historiaamme graafina (--graph
-valitsin) siten, että jokainen commit näkyy yhdellä rivillä (--oneline
-valitsin):
Tässä näemme viimeisimmän merge-commitin sekä kolmisuuntaisen yhdistämisen tunnusomaisen muodon.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.57
Yhdistämisristiriitojen Ratkaiseminen
Pyyhkäise näyttääksesi valikon
Konfliktien korjaaminen
Edellisessä luvussa kohtasimme yhdistämiskonfliktin, joten nyt on aika korjata se. Avataan ensin branch_learning.txt
-tiedosto Vim-editorilla seuraavalla komennolla:
Jos sinulla ei ole Vim-editoria asennettuna, voit käyttää muita tekstieditoreita, kuten nano tai atom (korvaa vim
editorisi nimellä yllä olevassa komennossa). Suosittelemme kuitenkin käyttämään Vim-editoria, sillä sen avulla ohjeiden seuraaminen on huomattavasti helpompaa.
Tältä tiedostomme näyttää avattuna Vim-editorissa:
Nyt näemme merkinnät, jotka osoittavat ristiriitaiset kohdat. Nämä merkinnät esitetään nuolilla ja erikoismerkeillä korostaen eri haarojen muutoksia. Konfliktimerkinnät ovat seuraavat:
<<<<<<< HEAD
: Ilmaisee nykyisen haaran (tässä tapauksessamaster
) muutosten alun;=======
: Erottelee nykyisen haaran (HEAD) muutokset yhdistettävän haaran muutoksista;>>>>>>> feature/new-feature
: Merkitsee yhdistettävän haaran muutosten lopun.
Konfliktit voidaan ratkaista valitsemalla joko nykyisen haaran (master
) muutokset, yhdistettävän haaran (feature/new-feature
) muutokset tai muokkaamalla muutokset manuaalisesti.
Muokataan muutokset manuaalisesti yhdistämällä molempien haarojen muutokset seuraavien vaiheiden mukaisesti:
1. Siirry muokkaustilaan
Ensin täytyy siirtyä insert (muokkaus) -tilaan Vim-editorissa painamalla i
. Tämä mahdollistaa tekstin muokkaamisen.
2. Muokkaa ristiriitaista osiota
Seuraavaksi yhdistetään molempien haarojen rivit peräkkäin, jolloin tiedoston lopullinen sisältö on seuraava:
3. Poistu muokkaustilasta, tallenna ja sulje:
Poistuaksesi insert-tilasta, paina Escape-näppäintä. Tämän jälkeen tallenna muutokset ja poistu kirjoittamalla :wq
ja painamalla Enter-näppäintä:
Tiedoston kommitointi
Koska ristiriidat on ratkaistu, lisätään nyt branch_learning.txt
staging-alueelle ja tarkistetaan tila:
Tiedostoa on muokattu ja se on lisätty staging-alueelle. Voimme nyt jatkaa kommitointiin:
Jälleen kerran oletustekstieditori avautuu (Vim tässä tapauksessa) oletuskommitviestin kanssa, joka liittyy yhdistämiseen:
Siirry insert-tilaan Vimissä painamalla i
ja muokkaa tätä viestiä lisäämällä seuraava rivi: Kept lines from both branches
määrittääksesi, miten ratkaisimme konfliktit. Tässä on koko commit-viesti:
Poistuaksesi insert-tilasta, tallenna muutokset ja poistu Vimistä painamalla Escape-näppäintä, kirjoita :wq
ja paina Enter-näppäintä.
Commit onnistui ja yhdistämiskonflikti on nyt ratkaistu.
Tarkastellaan nyt commit-historiaamme graafina (--graph
-valitsin) siten, että jokainen commit näkyy yhdellä rivillä (--oneline
-valitsin):
Tässä näemme viimeisimmän merge-commitin sekä kolmisuuntaisen yhdistämisen tunnusomaisen muodon.
Kiitos palautteestasi!