Kako ispraviti pogrešku u Git-u: prvo morate riješiti svoj trenutni indeks

Pogreška „Prvo trebate riješiti svoj trenutni indeks “ pojavljuje se u Gitu i znači da postoji sukob spajanja i ako sukob ne riješite, nećete moći odlaziti u drugu poslovnicu. Ova poruka o pogrešci također znači da spajanje nije uspjelo ili postoje sukobi s datotekama.

Pogreška: prvo morate riješiti svoj trenutni indeks

Koje su sve te datoteke, spajanja i sukobi? Ovi će vam uvjeti biti nepoznati ako ste početnik u korištenju Gita. Git je platforma za upravljanje verzijama koja omogućuje nekoliko ljudi istovremeno raditi na datotekama i gurati svoju lokalnu kopiju koda do one spremljene u oblaku. Na ovaj način ako promijenite neki preuzet (ili već gurnut) kôd i ponovo ga gurnete u oblak, promjene će u oblaku prepisati vaša lokalna kopija.

Git ima koncept grana. Iz nje se grana glavna i nekoliko drugih grana. Ova se pogreška naročito pojavljuje ako prelazite s jedne grane na drugu (pomoću blagajne) i postoje sukobi u datotekama trenutne grane. Ako se ne riješe, nećete moći prebaciti grane.

Što uzrokuje Git error: prvo morate riješiti svoj trenutni indeks?

Kao i ranije spomenuti, uzroci ove pogreške su prilično ograničeni. Doći će do ove pogreške zbog:

  • Spajanje nije uspjelo i morate riješiti sukob spajanja prije nego što nastavite s drugim zadacima.
  • U datotekama postoje trenutni (ili ciljani ogranak) i zbog tih sukoba nećete moći odjaviti se iz podružnice ili push koda.

Prije nego što nastavite s rješenjem, provjerite imate li propisnu kontrolu verzija i pametno je zaustaviti ostale članove tima da mijenjaju kôd prije nego što riješite sukob.

1. rješenje: rješavanje sukoba spajanja

Ako vaše spajanje Git automatski ne riješi, indeks i radno stablo ostavljaju u posebnom stanju što vam pomaže dati sve informacije potrebne za rješavanje spajanja. Datoteke koje imaju sukobe bit će posebno označene u indeksu i dok ne riješite problem i ne ažurirate indeks, nastavit ćete primati ovu poruku o pogrešci.

  1. Riješite sve sukobe . Provjerite datoteke koje imaju sukobe jer će ih označiti indeks i u skladu s njima izvršite promjene.
  2. Nakon što ste riješili sve postojeće sukobe, dodajte datoteku i zatim izvršite .

Primjer je:

 $ git dodaj datoteku.txt $ git počiniti 

Osobni komentar možete dodati tijekom počinjenja. Primjer je:

 $ git commit - m "Ovo je Appuals Git repozitorij" 
  1. Nakon što ste riješili sukob, pokušajte provjeriti postojeću podružnicu i provjerite je li problem riješen.

2. rješenje: Povrat vašeg spajanja

Postoje brojni slučajevi gdje spajate grane i brkate. Zbog svih sukoba i zbrke, projekt je sada u zbrci i članovi vašeg tima za to vas krive. U ovom slučaju morate poništiti prethodnu obvezu (obveza spajanja) . Ovo će u potpunosti poništiti spajanje i vratiti cijeli projekt u stanje kad niste napravili nijedno spajanje. Ovo može biti spasitelj života ako ste zabrljali stvari nakon popravka.

Da biste poništili spajanje, upišite sljedeće:

 $ git resetirajte - premjestite 

Gornja naredba resetirat će indeks i ažurirati datoteke u radnom stablu koje se razlikuju između 'počiniti' i 'glave'. No zadržat će one datoteke koje se razlikuju između indeksa i radnog stabla.

Možete i pokušati obrnuti glavu koristeći sljedeću naredbu:

 $ git vratiti glavu 

Ako želite odrediti točan čin spajanja koji želite poništiti, možete upotrijebiti istu naredbu za vraćanje, ali odredite dodatne parametre. SHA1 hash obveza spajanja koristit će se. The -m praćen 1 označava da želimo zadržati roditeljsku stranu spajanja (grana u koju se spajamo). Ishod ovog povratka je da će Git stvoriti novu obvezu koja vraća promjene iz spajanja.

 $ git revert -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4> 

Zanimljivi Članci