Sobes.tech
Junior

Ako riešite konflikty v Gite?

sobes.tech AI

Odpoveď od AI

Pri pull ali rebase pride do združevanja sprememb. Če Git ne more samodejno rešiti vrstic v konfliktu v datotekah, jih označi s posebnimi markerji:

<<<<<<< HEAD
vrstica iz trenutne veje
=======
vrstica iz veje, ki jo združujemo
>>>>>>> feature/nova-funkcija

Za rešitev konflikta:

  1. Odprite konfliktno datoteko v urejevalniku.

  2. Ročno uredite datoteko, tako da izberete potrebne dele iz obeh različic ali ustvarite novo kombinacijo.

  3. Odstranite markerje <<<<<<<, =======, >>>>>>>.

  4. Shranite datoteko.

  5. Dodajte rešeno datoteko v indeks z git add:

    # Dodajte določeno datoteko
    git add pot/do/rešene/datoteke.txt
    
    # Dodajte vse rešitve datoteke
    git add .
    
  6. Naredite commit za dokončanje združevanja:

    # Med združevanjem
    git commit -m "Rešen konflikt združevanja"
    
    # Med rebase
    git rebase --continue
    

Če je veliko konfliktov ali so zapleteni, lahko uporabite orodja za združevanje:

git mergetool

To bo odprlo grafično orodje, ki vam pomaga korak za korakom preiti skozi konflikte.

V primeru težav med rebase lahko uporabite:

  • git rebase --abort: Prekličite rebase in se vrnite na prejšnje stanje.
  • git rebase --skip: Preskočite trenutni konfliktni commit (lahko je nevarno).

Pomembno je, da po rešitvi konfliktov testirate spremembe, da zagotovite, da koda deluje pravilno.