Kako popraviti napako Git: Najprej morate razrešiti svoj trenutni indeks



Preizkusite Naš Instrument Za Odpravo Težav

Napaka » Najprej morate razrešiti svoj trenutni indeks 'Se zgodi v Gitu in pomeni, da je prišlo do konflikta spajanja, in če ne rešite konflikta, ne boste smeli več plačati v drugo vejo. To sporočilo o napaki pomeni tudi, da združitev ni uspela ali da obstajajo spori z datotekami.



Napaka: Trenutni indeks morate najprej razrešiti v nadzornem viru Git

Napaka: Najprej morate razrešiti svoj trenutni indeks



Katere so vse te datoteke, združitve in konflikti? Ti pogoji vam ne bodo znani, če že uporabljate Git. Git je platforma za nadzor različic, ki omogoča več ljudem, da hkrati delajo z datotekami in potisnejo svojo lokalno kopijo kode na tisto, shranjeno v oblaku. Če spremenite preneseno (ali že potisnjeno) kodo in jo znova potisnete v oblak, bo lokalna kopija spremembe v oblaku prepisala.



Git ima koncept podružnic. Obstaja glavna veja in iz nje se odcepi več drugih vej. Do te napake pride še posebej, če preklapljate z ene veje na drugo (z uporabo blagajne) in so v datotekah trenutne veje konflikti. Če se ne rešijo, ne boste mogli zamenjati podružnic.

Kaj povzroča napako Git: Najprej morate razrešiti svoj trenutni indeks?

Kot smo že omenili, so vzroki za to napako precej omejeni. Ta napaka se bo pojavila, ker:

  • TO spajanje ni uspelo in morate rešiti konflikt spajanja, preden nadaljujete z drugimi nalogami.
  • Obstajajo konflikti v datotekah v vaši trenutni (ali ciljni veji) in zaradi teh konfliktov ne boste mogli odjaviti veje ali potisne kode.

Preden nadaljujete z rešitvijo, se prepričajte, da jo imate ustrezen nadzor nad različicami in pametno je, da drugim članom ekipe preprečite spreminjanje kode, preden razrešite konflikt.



1. rešitev: odpravljanje konflikta med spajanjem

Če Git samodejno ne razreši vaše združitve, indeks in delovno drevo pusti v posebnem stanju, ki vam pomaga dati vse informacije, ki jih potrebujete za razrešitev združitve. Datoteke, ki imajo konflikte, bodo v indeksu posebej označene in dokler ne odpravite težave in posodobite indeksa, boste še naprej prejemali to sporočilo o napaki.

  1. Rešite vse konflikte . Preverite datoteke, ki imajo konflikte, saj jih bo označil indeks, in jih ustrezno spremenite.
  2. Ko ste rešili vse obstoječe spore, dodaj datoteko in nato zavezati .

Primer je:

$ git add file.txt $ git commit

Med obvezovanjem lahko dodate svoj osebni komentar. Primer je:

$ git commit –m “To je skladišče Appuals Git”
  1. Ko ste rešili spor, poskusite preveriti obstoječo vejo in preveriti, ali je težava odpravljena.

2. rešitev: razveljavitev združitve

Obstajajo številni primeri, ko združite veje in zmedete. Zaradi vseh konfliktov in zmede je projekt zdaj nered in za to vas krivijo člani vaše ekipe. V tem primeru moraš razveljavi prejšnjo odobritev (obveznost združitve) . S tem boste združitev v celoti razveljavili in celoten projekt vrnili v stanje, ko niste izvedli nobenega združevanja. To vam lahko reši življenje, če ste stvari popravili nepopravljivo.

Za razveljavi združitev vnesite naslednje:

$ git reset --- spajanje

Zgornji ukaz bo ponastavil indeks in posodobil datoteke v delujočem drevesu, ki se razlikujejo med 'commit' in 'head'. Vendar bo obdržal tiste datoteke, ki se med indeksom in delovnim drevesom razlikujejo.

Lahko tudi poskusite vrnitev GLAVE z naslednjim ukazom:

$ git revert HEAD

Če želite določiti natančno odobritev združitve, ki jo želite razveljaviti, lahko uporabite isti ukaz za razveljavitev, vendar določite dodatne parametre. Uporabil se bo zgoščeni SHA1 prevzema združitve. -M, ki mu sledi 1, pomeni, da želimo obdržati nadrejeno stran spajanja (veja, v katero se združujemo). Rezultat tega razveljavitve je, da bo Git ustvaril nov prevzem, ki bo zvišal spremembe iz združitve.

$ git revert -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4>
3 minute branja