Sådan rettes Git-fejl: Du skal først løse dit nuværende indeks

Fejlen “ Du skal først løse dit nuværende indeks ” forekommer i Git og betyder, at der er en sammenfletningskonflikt, og medmindre du løser konflikten, får du ikke adgang til en anden gren. Denne fejlmeddelelse betyder også, at en fletning mislykkedes, eller at der er konflikter med filerne.

Fejl: Du skal først løse dit nuværende indeks i Git-kildekontrol

Hvad er alle disse filer, fletninger og konflikter? Disse vilkår er ukendte for dig, hvis du er nybegynder i at bruge Git. Git er en versionskontrolplatform, der giver flere personer mulighed for at arbejde på filer samtidigt og skubbe deres lokale kopi af koden til den, der er gemt i skyen. På denne måde, hvis du ændrer en downloadet (eller allerede skubbet) kode og skubber den igen til skyen, overskrives ændringerne i skyen af ​​din lokale kopi.

Git har et koncept af grene. Der er en mesterfilial, og flere andre grene forgrener sig fra den. Denne fejl opstår især, hvis du skifter fra en gren til en anden (ved hjælp af kassen), og der er konflikter i filerne i den aktuelle gren. Hvis de ikke løses, kan du ikke skifte filial.

Hvad forårsager Git-fejlen: Du skal først løse dit nuværende indeks?

Som nævnt før er årsagerne til denne fejl ret begrænsede. Du vil opleve denne fejl, fordi:

  • En fletning mislykkedes, og du skal løse fletningskonflikten, inden du går videre med andre opgaver.
  • Der er konflikter i filerne på din nuværende (eller målrettede gren), og på grund af disse konflikter kan du ikke tjekke ud af en gren eller push-kode.

Før du fortsætter med løsningen, skal du sørge for, at du har korrekt versionskontrol, og det er klogt at forhindre andre teammedlemmer i at ændre koden, før du løser konflikten.

Løsning 1: Løsning af fusionskonflikt

Hvis din fletning ikke automatisk løses af Git, efterlader det indekset og arbejdstræet i en speciel tilstand, som hjælper med at give dig alle de oplysninger, du har brug for til at løse fusionen. De filer, der har konflikter, vil blive markeret specielt i indekset, og indtil du løser problemet og opdaterer indekset, vil du fortsat modtage denne fejlmeddelelse.

  1. Løs alle konflikter . Kontroller de filer, der har konflikter, da de markeres med indekset, og foretag ændringer i dem i overensstemmelse hermed.
  2. Når du har løst alle eksisterende konflikter, skal du tilføje filen og derefter begå .

Et eksempel er:

$ git tilføj fil.txt $ git-forpligtelse

Du kan tilføje din personlige kommentar, mens du forpligter dig. Et eksempel er:

$ git commit –m “Dette er Appuals Git-arkiv”
  1. Når du har løst konflikten, kan du prøve at tjekke ud af din eksisterende filial og se, om problemet er løst.

Løsning 2: Gendan din fletning

Der er mange tilfælde, hvor du fusionerer grene og ødelagt. På grund af alle konflikter og forvirring er projektet nu et rod, og dine teammedlemmer bebrejder dig for det. I dette tilfælde skal du tilbagekalde tidligere forpligtelse (fusionsforpligtelsen) . Dette vil fortryde fusionen helt og bringe hele projektet tilbage til en tilstand, når du ikke foretog nogen fusioner. Dette kan være en livredder, hvis du har ødelagt tingene uden reparation.

For at gendanne fletningen skal du skrive følgende:

$ git reset -– flette

Ovenstående kommando nulstiller indekset og opdaterer filerne i arbejdstræet, der adskiller sig fra 'commit' og 'head'. Det vil dog beholde de filer, der er forskellige mellem indekset og arbejdstræet.

Du kan også prøve at tilbageføre HEAD ved hjælp af følgende kommando:

$ git vend tilbage HEAD

Hvis du vil specificere den nøjagtige fletteforpligtelse, som du vil vende tilbage, kan du bruge den samme kommando til tilbagevenden, men angive yderligere parametre. SHA1-hash af fusionsforpligtelsen vil blive brugt. Den -m efterfulgt af 1 indikerer, at vi vil beholde den overordnede side af fusionen (den gren, vi fusionerer ind i). Resultatet af denne tilbagevenden er, at Git opretter en ny forpligtelse, der ruller ændringerne tilbage fra fusionen.

$ git revert -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4>

Anbefalet

Fix: Minecraft svarer ikke
Hvad er applikation til registrering af digital tv-tuner-enhed, og skal den fjernes?
Hvad er FileRepMalware, og skal du fjerne det