Ako opraviť chybu Git 'Vaše miestne zmeny v nasledujúcich súboroch sa prepíšu zlúčením'

Chybové hlásenie „ Vaše miestne zmeny v nasledujúcich súboroch sa prepíšu zlúčením “ sa vyskytne v mechanizme kontroly verzií Git. Táto chyba sa vyskytuje, ak ste upravili súbor, ktorý má tiež zmeny vo vzdialenom úložisku.

Git Error: Vaše miestne zmeny v nasledujúcich súboroch sa prepíšu zlúčením

Táto chybová správa sa vyhýba, ak neexistujú žiadne nepovolené súbory, ktoré majú tiež zmeny vo vzdialenom úložisku. Pri zaznamenávaní tejto správy je najlepšie poradiť sa s ostatnými členmi tímu a požiadať ich o názor. Či už chcete zlúčiť svoje lokálne zmeny alebo ponechať verziu prítomnú v úložisku, najlepšie je nechať všetkých na palube.

Čo sú úložiská? Čo je to Git?

Úložisko je druh úložiska pre kód, ktorý je neustále upravovaný a získavaný členmi tímu prostredníctvom mechanizmu kontroly verzií GitHub. „ Pull“ znamená, že sťahujete najnovšiu verziu úložiska do miestneho úložiska / IDE (Integrated Development Environment), ako je Pycharm atď.

Po vytiahnutí môžete vykonať zmeny v kóde alebo pridať ďalšie funkcie. Po dokončení vkladáte kód do úložiska, aby sa zmeny uložili a doplnili. Kód je prístupný aj pre ostatných ľudí.

Ak ste nováčikom v ovládaní verzií Githubu, odporúča sa, aby ste si najprv prešli všetky základy. V tomto článku sa domnievame, že už máte základné vedomosti a poznáte všetky výhody a výstupy.

Ako opraviť „Vaše miestne zmeny v nasledujúcich súboroch sa prepíšu zlúčením“?

Rozlíšenie tejto chybovej správy závisí od toho, čo chcete urobiť. Môžete zlikvidovať svoje lokálne zmeny a presunúť ich do úložiska alebo môžete uložiť svoje lokálne zmeny do skrýša a stiahnuť verziu z úložiska. Všetko záleží na vašich preferenciách.

Preto vám odporúčame, aby ste sa predtým, ako sa pohnete vpred, poradili s členmi vášho tímu a aby ste sa uistili, že ste všetci na tej istej stránke . Ak sa dopustíte nesprávneho postupu alebo stlačíte nesprávnu verziu, môže to ovplyvniť celý tím.

Metóda 1: Vynútenie ťahu na prepísanie miestnych zmien

Ak vám nezáleží na lokálnych zmenách a chcete získať kód z úložiska, môžete vynútiť ťah. Týmto sa prepíšu všetky miestne zmeny vykonané na vašom počítači a objaví sa duplicitná kópia verzie v úložisku.

Vo svojom IDE vykonajte nasledujúce príkazy:

 git reset - tvrdý git pull 

Tým okamžite dôjde k zničeniu všetkých vašich miestnych zmien, takže sa uistite, že viete, čo robíte a nepotrebujete miestne zmeny.

Metóda 2: Udržiavanie zmien (miestnych aj repo)

Ak chcete zachovať obe zmeny (zmeny vykonané lokálne a zmeny prítomné v úložisku), môžete ich pridať a potvrdiť. Ak sa rozhodnete ťahať, bude to zrejme zlúčený konflikt. Tu môžete pomocou nástrojov v IDE (napríklad Difftool a mergetool) porovnať dva kusy kódu a určiť, ktoré zmeny sa majú zachovať a ktoré sa majú odstrániť. Toto je stredná cesta; žiadne zmeny sa nestratia, kým ich neodstránite manuálne.

 git add $ the_file_under_error git commit git pull 

Ak dôjde k zlúčeniu konfliktu, rozbaľte tieto nástroje na riešenie konfliktov a skontrolujte jednotlivé riadky.

Metóda 3: Udržiavanie oboch zmien, ale nie sú záväzné

Táto situácia nastáva z času na čas, keď vývojári nie sú pripravení sa zaviazať, pretože existuje nejaký čiastočne rozbitý kód, ktorý ladíte. Tu môžeme bezpečne uložiť zmeny, stiahnuť verziu z úložiska a potom odomknúť váš kód.

 git stash save --keep-index 

alebo

 git skrýšiť 
 git pull git skrýša pop 

Ak po vložení skrýša dôjde ku konfliktom, mali by ste ich vyriešiť obvyklým spôsobom. Môžete tiež použiť príkaz:

 použiť git skrýšu 

namiesto popu, ak nie ste pripravení stratiť skrytý kód kvôli konfliktom.

Ak sa zlúčenie nezdá byť pre vás životaschopnou možnosťou, zvážte vykonanie rebase. Rebasing je proces presunu alebo kombinovania postupnosti odovzdaní nových základných potvrdení. V prípade rebasingu zmeňte kód na:

 git stash git pull --rebase pôvod majster git stash pop 

Metóda 4: Vykonajte zmeny v „konkrétnych“ častiach kódu

Ak chcete vykonať zmeny v konkrétnych častiach kódu a nechcete nahradiť všetko, môžete prevziať všetko, čo nechcete prepísať, a potom postupujte podľa metódy 3. Na zmeny, ktoré chcete prepísať z verzie prítomnej v úložisku:

 git checkout cesta / k / súboru / k / návratu 

alebo

 git checkout HEAD ^ cesta / k / súboru / k / návratu 

Musíte sa tiež uistiť, že súbor nie je usporiadaný prostredníctvom:

 git reset HEAD cesta / k / súboru / k / návratu 

Potom pokračujte príkazom pull:

 git pull 

Potom sa pokúsi načítať verziu z úložiska.

Zaujímavé Články