Kako odpraviti Git Error "Lokalne spremembe naslednjih datotek bodo prepisane z združitvijo"

Sporočilo o napaki " Lokalne spremembe naslednjih datotek bodo prepisane z združitvijo " se pojavi v nadzornem mehanizmu različice Git. Do te napake pride, če ste spremenili datoteko, ki ima tudi spremembe v oddaljenem skladišču.

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

Temu sporočilu o napaki se izognemo, če v oddaljenem skladišču ni nepoškodovanih datotek, ki imajo tudi spremembe. Pri iskanju tega sporočila je najbolje, da se posvetujete z drugimi člani skupine in povprašate za njihovo mnenje. Ne glede na to, ali želite združiti svoje lokalne spremembe ali ohraniti različico, ki je prisotna v skladišču, je najbolje, da vsi ostanejo na krovu.

Kaj so skladišča? Kaj so push in pull v Gitu?

Repozitorij je neke vrste shramba kode, ki jo člani skupine nenehno spreminjajo in pridobivajo prek mehanizma za nadzor različic GitHub. " Potegnite" pomeni, da zadnjo različico skladišča povlečete v lokalno shrambo / IDE (integrirano razvojno okolje), kot je Pycharm itd.

Po izvleku spremenite kodo ali dodate več funkcij. Ko končate, potisnite kodo v skladišče, tako da se shranijo spremembe in dodajo dodatki. Koda je dostopna tudi drugim.

Če ste nov za nadzor različic Github, priporočamo, da najprej preučite vse osnove. V tem članku predvidevamo, da že imate osnovno znanje in poznate vse začetke in izide.

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 povlečete tiste v skladišču ali pa shranite lokalne spremembe v skladišče in različico potegnete iz skladišča. Vse je odvisno od vaše želje.

Zato priporočamo, da se pred nadaljevanjem posvetujete s člani svoje ekipe in se prepričate, da ste vsi na isti strani . Če storite napačno ali potisnete napačno različico, lahko to vpliva na celotno ekipo.

1. način: prisili povleko za prepis lokalnih sprememb

Če vas ne zanimajo spremembe, izvedene lokalno in želite kodo pridobiti iz skladišča, lahko izvlečete. To bo prepisalo vse lokalne spremembe, izvedene v vašem računalniku, se bo prikazala podvojena kopija različice v skladišču.

Izvedite naslednje ukaze v IDE:

 git reset - trdi git pull 

To bo takoj uničilo vse vaše lokalne spremembe, zato poskrbite, da boste vedeli, kaj počnete in ne potrebujete lokalnih sprememb.

2. način: Ohranjanje obeh sprememb (lokalnih in s strani repo)

Če želite obdržati obe spremembi (spremembe, opravljene lokalno, in spremembe, ki so prisotne v skladišču), lahko dodate in založite spremembe. Ko potegnete, bo očitno prišlo do združitve konflikta. Tu lahko uporabite orodja v IDE (na primer Difftool in mergetool), da primerjate dva dela kode in določite, katere spremembe obdržati in katere odstraniti. To je srednja pot; spremembe ne bodo izgubljene, dokler jih ročno ne odstranite.

 git add $ the_file_under_error git počiniti git pull 

Ko pride do konflikta združevanja, prikažite orodja za reševanje konfliktov in preverite vrstico.

3. način: Ohranjanje obeh sprememb, vendar se ne zavezuje

To se občasno zgodi, ko razvijalci niso pripravljeni na zavezo, ker obstaja nekaj delno pokvarjene kode, ki jo odpravljate. Tu lahko varno shranimo spremembe, potegnemo različico iz skladišča in nato odvežemo kodo.

 git stash save --keke-indeks 

ali

 git zaklad 
 git pull git stash pop 

Če pride do konfliktov, ko pospravite zaboj, jih rešite na običajen način. Uporabite lahko tudi ukaz:

 velja git zaklad 

namesto popa, če zaradi konfliktov niste pripravljeni izgubiti prikrite kode.

Če se vam združevanje ne zdi izvedljiva možnost, razmislite o ponovni izvedbi baze. Sprostitev je postopek premikanja ali združevanja zaporedja obveznosti na novo osnovno zavezo. V primeru ponovne izdaje spremenite kodo v:

 git stash git pull --rebase origin master git stash pop 

4. način: Spremenite „posebne“ dele kode

Če želite spremeniti določene dele kode in ne želite zamenjati vsega, lahko storite vse, česar nočete prepisati, in sledite metodi 3. Za spremembe lahko uporabite naslednji ukaz. želite prepisati iz različice v skladišču:

 git checkout pot / do / datoteka / do / povrniti 

ali

 git checkout HEAD ^ pot / do / datoteka / do / povrnitev 

Poskrbite tudi, da datoteka ne bo uprizorjena prek:

 git ponastavite HEAD pot / do / datoteka / do / povrni 

Nato nadaljujte z ukazom pull:

 git pull 

To bo nato poskušalo pridobiti različico iz skladišča.

Zanimivi Članki