Giti tõrke parandamine: kõigepealt peate lahendama oma praeguse indeksi

Viga „Kõigepealt peate lahendama oma praeguse indeksi “ ilmub Git'is ja tähendab, et on olemas liitmiskonflikt ning kui te konflikti ei lahenda, ei lubata teil kassasse mõnda teise haru minna. See tõrketeade tähendab ka seda, et ühendamine ebaõnnestus või on failidega vastuolus.

Viga: kõigepealt peate lahendama oma praeguse indeksi

Mis on kõik need failid, liitmised ja konfliktid? Need mõisted on teile tundmatud, kui olete Giti kasutamise alustaja. Git on versioonikontrolli platvorm, mis võimaldab mitmel inimesel failidega üheaegselt töötada ja suunata oma koodide kohalik koopia pilves talletatavale. Sel viisil, kui muudate mõnda allalaaditud (või juba surutud) koodi ja lükkate selle uuesti pilve, kirjutatakse muudatused pilves üle teie kohaliku eksemplari kaudu.

Gitil on harude kontseptsioon. Seal on peaharu ja sellest hargnevad veel mitmed harud. See tõrge ilmneb eriti siis, kui vahetate ühte haru teise (kasutab kassat) ja praeguse haru failides on vastuolusid. Kui need pole lahendatud, ei saa te harusid vahetada.

Mis põhjustab Giti tõrget: peate kõigepealt lahendama oma praeguse indeksi?

Nagu varem mainitud, on selle vea põhjused üsna piiratud. See tõrge ilmneb järgmistel põhjustel:

  • Ühendamine ebaõnnestus ja enne muude ülesannetega jätkamist peate lahendama liitmiskonflikti.
  • Teie praeguses (või sihitud haru) failides on vastuolusid ja nende konfliktide tõttu ei saa te hargnemisest ega tõukoodist välja logida.

Enne lahendusega jätkamist veenduge, et teil oleks õige versioonikontroll. Enne konflikti lahendamist on mõistlik takistada teistel meeskonnaliikmetel koodi muutmast.

1. lahendus: ühendamiskonflikti lahendamine

Kui Git ei lahenda teie liitmist automaatselt, jätab see indeksi ja töötava puu spetsiaalsesse olekusse, mis aitab teil kogu ühendamise lahendamiseks vajalikku teavet anda. Konfliktidega failid märgitakse spetsiaalselt registrisse ja kuni probleem lahendatakse ja indeksit värskendatakse, saate seda tõrketeadet endiselt.

  1. Lahendage kõik konfliktid . Kontrollige vastuolulisi faile, kuna neid tähistab register ja tehke vastavalt muudatused.
  2. Kui olete kõik olemasolevad konfliktid lahendanud, lisage fail ja tehke seejärel kohustus .

Näide:

 $ git lisa fail.txt $ git pühenduma 

Pühendumise ajal saate lisada oma isikliku kommentaari. Näide:

 $ git activ –m “See on Appuals Giti hoidla” 
  1. Kui olete konflikti lahendanud, proovige oma olemasolevast harust välja tulla ja vaadata, kas probleem on lahendatud.

2. lahendus: ühendamise taastamine

On palju juhtumeid, kus ühendate filiaale ja ajate segadusse. Kõigi konfliktide ja segaduste tõttu on projekt nüüd jama ja teie meeskonna liikmed süüdistavad teid selles. Sel juhul peate eelmise kohustuse (liitmiskohustus) tagasi võtma . See tühistab liitmise täielikult ja viib kogu projekti tagasi olekusse, kui te ei teinud ühtegi liitmist. See võib olla elupäästja, kui olete asjad pärast remonti segamini ajanud.

Ühendamise tühistamiseks tippige järgmine:

 $ git reset –merge 

Ülaltoodud käsk lähtestab indeksi ja värskendab tööpuus olevaid faile, mis erinevad eraldamise ja päise vahel. Kuid see hoiab alles neid faile, mis indeksi ja tööpuu vahel erinevad.

Võite proovida ka HEAD-i ennistamist, kasutades järgmist käsku:

 $ git tagasi HEAD 

Kui soovite täpsustada liitmiskohustuse, mille soovite taastada, võite kasutada sama käsku tagasipööramine, kuid täpsustada täiendavaid parameetreid. Kasutatakse ühinemiskomitee SHA1 räsi. -M, millele järgneb 1, näitab, et me tahame säilitada ühendamise (haru, millesse me liidame) vanema poole. Selle tagasituleku tulemus on see, et Git loob uue kohustuse, mis tühistab liitumisel tehtud muudatused.

 $ git tagasi - m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4> 

Huvitavad Artiklid