Kako popraviti napako Git 'Vaše lokalne spremembe naslednjih datotek bodo prepisane z združitvijo'



Preizkusite Naš Instrument Za Odpravo Težav

Sporočilo o napaki “ Vaše lokalne spremembe naslednjih datotek bodo prepisane z združitvijo 'Se pojavi v mehanizmu za nadzor različice Git. Do te napake pride, če ste spremenili datoteko, ki ima spremembe tudi v oddaljenem repozitoriju.



Git Error: Vaše lokalne spremembe naslednjih datotek bodo med kodiranjem prepisane s spajanjem

Git Error: Vaše lokalne spremembe naslednjih datotek bodo prepisane z združitvijo



Temu sporočilu o napaki se izognemo, ČE v oddaljenem repozitoriju ni datotek, ki bi bile spremenjene. Ko doživljate to sporočilo, je najbolje, da se posvetujete z drugimi člani ekipe in povprašate za njihovo mnenje. Ne glede na to, ali želite združiti lokalne spremembe ali ohraniti različico v skladišču, je najbolje, da vsi ostanejo na krovu.



Kaj so skladišča? Kaj so Git in push in pull?

Repozitorij je neke vrste pomnilnik za kodo, ki ga člani ekipe nenehno spreminjajo in pridobivajo prek mehanizma za nadzor različic GitHub. A Potegni pomeni, da v lokalno shrambo / IDE (integrirano razvojno okolje), kot je Pycharm itd.

Po potegu spremenite kodo ali dodate več funkcij. Ko končate, Potisni kodo v repozitorij, tako da se spremembe shranijo in dodajo. Koda postane dostopna tudi drugim.

Če še ne poznate nadzora različic Github, priporočamo, da najprej preberete vse osnove. V tem članku predpostavljamo, da že imate osnovno znanje in poznate vse podrobnosti.



Kako popraviti »Vaše lokalne spremembe naslednjih datotek bodo prepisane z združitvijo«?

Ločljivost tega sporočila o napaki je odvisna od tega, kaj želite storiti. Lokalne spremembe lahko zavržete in izvlečete tiste v repozitoriju ali pa lokalne spremembe shranite v zalogo in iz repozitorija povlečete različico. Vse je odvisno od vaših želja.

Zato vam priporočamo, da se posvetujete s člani svoje ekipe in se prepričate, da ste vsi na isto stran preden se premaknete naprej. Če se zavežete narobe ali potisnete napačno različico, lahko to vpliva na celotno ekipo.

Metoda 1: Prisilna poteza, da prepiše lokalne spremembe

Če ti ne skrbijo za lokalne spremembe in želite pridobiti kodo iz skladišča, lahko prisilno potegnete. S tem boste prepisali vse lokalne spremembe, opravljene v računalniku, pojavila se bo podvojena kopija različice v skladišču.

V IDE izvedite naslednje ukaze:

git reset - trdi git pull

S tem boste takoj uničili vse lokalne spremembe, zato se prepričajte, da veste, kaj počnete, in da lokalnih sprememb ne potrebujete.

2. način: Vodenje obeh sprememb (lokalno in iz repo)

Če želite obdržati obe spremembi (spremembe, opravljene lokalno, in spremembe, ki so prisotne v repozitoriju), lahko svoje spremembe dodate in odobrite. Ko povlečete, bo očitno prišlo do konflikta med spajanjem. Tu lahko z orodji v IDE (na primer Difftool in mergetool) primerjate dva dela kode in določite, katere spremembe obdržati in katere odstraniti. To je srednja pot; nobene spremembe ne bodo izgubljene, dokler jih ne odstranite ročno.

git dodaj $ the_file_under_error git commit git pull

Ko dobite konflikt za spajanje, jih odprite in jih preverite po vrsticah.

3. način: Ohranjanje obeh sprememb, vendar NE zavezovanje

Ta situacija se občasno zgodi, ko se razvijalci niso pripravljeni zavezati, ker obstaja neka delno pokvarjena koda, ki jo odpravljate. Tu lahko varno shranimo spremembe, potegnemo različico iz skladišča in nato odstranimo kodo.

git stash save --keep-index

ali

git stash
git pull git stash pop

Če pride do konfliktov, potem ko odprete skrinjo, jih razrešite na običajen način. Uporabite lahko tudi ukaz:

git stash velja

namesto pop, če zaradi konfliktov niste pripravljeni izgubiti shranjene kode.

Če se vam združitev ne zdi izvedljiva možnost, razmislite o ponovni uporabi. Preoblikovanje je postopek premikanja ali kombiniranja zaporedja predaj v novo osnovno odobritev. V primeru prerazporejanja kode spremenite v:

git stash git pull --rebase izvor master git stash pop

4. način: Spremenite 'določene' dele kode

Če želite spremeniti določene dele kode in ne želite zamenjati vsega, lahko zavezati vse, česar ne želite prepisati, in nato sledite metodi 3. Za spremembe, ki jih želite prepisati iz različice v repozitoriju, lahko uporabite naslednji ukaz:

git checkout pot / do / datoteke / do / povrniti

ali

git checkout HEAD ^ pot / do / datoteke / do / vrnitev

Prav tako se morate prepričati, da datoteka ni uprizorjena prek:

git reset HEAD pot / do / datoteke / do / povrni

Nato nadaljujte z ukazom pull:

git pull

Nato bo poskusil pridobiti različico iz skladišča.

3 minute branja