Kako ispraviti pogrešku Git: Prvo morate riješiti svoj trenutni indeks

Pogreška "Prvo morate riješiti svoj trenutni indeks " pojavljuje se u Gitu i znači da postoji sukob spajanja i ako ne riješite sukob, nećete imati mogućnost plaćanja u drugu granu. 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 u kontroli izvora Git

Koje su sve ove datoteke, spajanja i sukobi? Ovi pojmovi bit će vam nepoznati ako ste početnik u korištenju Gita. Git je platforma za kontrolu verzija koja omogućava nekoliko ljudi da istovremeno rade na datotekama i guraju svoju lokalnu kopiju koda na onu koja je pohranjena u oblaku. Na ovaj način, ako promijenite neki preuzeti (ili već gurnuti) kôd i ponovo ga gurnete u oblak, vaša će lokalna kopija promjene zamijeniti u oblaku.

Git ima koncept grana. Postoji glavna grana i iz nje se grana nekoliko drugih grana. Ova se pogreška posebno događa ako prelazite s jedne grane na drugu (pomoću naplate) i postoje sukobi u datotekama trenutne grane. Ako se ne riješe, nećete moći zamijeniti poslovnice.

Što uzrokuje pogrešku Git: Prvo morate riješiti svoj trenutni indeks?

Kao što je već spomenuto, uzroci ove pogreške prilično su ograničeni. Do ove ćete pogreške doći jer:

  • Spajanje nije uspjelo i što vam je potrebno za rješavanje sukoba spajanja prije prelaska na drugim poslovima.
  • Postoje sukobi u datotekama na vašoj trenutnoj (ili ciljanoj grani) i zbog tih sukoba nećete moći odjaviti se iz grane ili push koda.

Prije nego što nastavite s rješenjem, provjerite imate li odgovarajuću kontrolu verzija i pametno je zaustaviti ostale članove tima da mijenjaju kod prije nego što riješite sukob.

Rješenje 1: Rješavanje sukoba spajanja

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

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

Primjer je:

$ git dodaj datoteku.txt $ git predaj

Tijekom dodavanja možete dodati svoj osobni komentar. Primjer je:

$ git commit –m “Ovo je Appuals Git spremište”
  1. Nakon što riješite sukob, pokušajte provjeriti postojeću poslovnicu i provjeriti je li problem riješen.

2. rješenje: Vraćanje vašeg spajanja

Brojni su slučajevi kada spajate grane i zabrljate. Zbog svih sukoba i zbrke, projekt je sada u neredu i za to vas krive članovi vašeg tima. U ovom slučaju, morate vratiti prethodno urezivanje (urezivanje spajanjem) . Ovo će u potpunosti poništiti spajanje i vratiti cijeli projekt u stanje kada niste izvršili spajanje. Ovo može biti spas ako ste zabrljali stvari koje se ne mogu popraviti.

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

$ git reset -– spajanje

Gornja naredba će resetirati indeks i ažurirati datoteke u radnom stablu koje se razlikuju između "predavanja" i "glave". Međutim, zadržat će one datoteke koje se razlikuju između indeksa i radnog stabla.

Također možete pokušati vratiti HEAD pomoću sljedeće naredbe:

$ git revert HEAD

Ako želite navesti točno urezivanje spajanja koje želite poništiti, možete upotrijebiti istu naredbu vraćanja, ali odrediti dodatne parametre. Upotrijebit će se SHA1 hash spajanja urezivanja. Znak -m iza kojeg slijedi 1 označava da želimo zadržati nadređenu stranu spajanja (grana u koju se spajamo). Ishod ovog vraćanja je da će Git stvoriti novi predaj koji uvodi promjene iz spajanja.

$ git revert -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4>

Preporučeno

Popravak: Minecraft ne reagira
Što je aplikacija za registraciju uređaja za digitalni TV tuner i treba li je ukloniti?
Što je FileRepMalware i biste li ga trebali ukloniti