Kā novērst Git kļūdu & lsquo; Apvienošana pārrakstīs jūsu vietējās izmaiņas šajos failos & rsquo;

Kļūdas ziņojums “ Vietējās izmaiņas šajos failos tiks pārrakstītas ar sapludināšanu ” parādās Git versijas kontroles mehānismā. Šī kļūda rodas, ja esat modificējis failu, kuram ir modifikācijas arī attālajā repozitorijā.

Git kļūda: Kodējot, vietējās izmaiņas šajos failos tiks pārrakstītas, apvienojot

Šis kļūdas ziņojums tiek novērsts, ja nav neviena neizpildīta faila, kam arī ir modifikācijas attālajā repozitorijā. Piedzīvojot šo ziņojumu, vislabāk ir konsultēties ar citiem komandas locekļiem un lūgt viņu viedokli. Neatkarīgi no tā, vai vēlaties apvienot vietējās izmaiņas vai saglabāt versiju krātuvē, vislabāk ir turēt visus uz kuģa.

Kas ir krātuves? Kas ir push and pull Git?

Repozitorijs ir sava veida koda krātuve, kuru komandas locekļi pastāvīgi modificē un iegūst, izmantojot GitHub versijas kontroles mehānismu. “ Pull” nozīmē, ka jūs velkat jaunāko krātuves versiju uz savu vietējo krātuvi / IDE (integrētā izstrādes vide), piemēram, Pycharm uc

Pēc vilkšanas jūs veicat izmaiņas kodā vai pievienojat citas funkcijas. Kad esat pabeidzis, kods tiek “ nospiests” uz krātuvi, lai izmaiņas tiktu saglabātas un tiktu veikti papildinājumi. Kods kļūst pieejams arī citiem cilvēkiem.

Ja Github versiju vadība jums ir jauna, ieteicams vispirms iziet visus pamatus. Šajā rakstā mēs pieņemam, ka jums jau ir pamatzināšanas un jūs zināt visas nepilnības.

Kā salabot “Apvienošana pārrakstīs jūsu vietējās izmaiņas šādos failos”?

Šī kļūdas ziņojuma izšķirtspēja ir atkarīga no tā, ko vēlaties darīt. Varat atmest savas lokālās izmaiņas un ievilkt tās repozitorijā, vai arī varat saglabāt vietējās izmaiņas atmiņā un izvilkt versiju no repozitorija. Viss ir atkarīgs no jūsu vēlmēm.

Tādēļ iesakām pirms došanās uz priekšu konsultēties ar komandas locekļiem un pārliecināties, vai visi esat vienā lapā . Ja izdarīsit nepareizi vai nospiedīsit nepareizu versiju, tas var ietekmēt visu komandu.

1. metode: piespiest vilkt, lai pārrakstītu vietējās izmaiņas

Ja jums nav nozīmes lokāli veiktajām izmaiņām un vēlaties iegūt kodu repozitorijā, varat piespiest vilkt. Tādējādi tiks pārrakstītas visas lokālās izmaiņas, kas veiktas jūsu datorā, parādīsies repozitorijā esošās versijas dublikāts.

IDE izpildiet šādas komandas:

git reset - grūti git pull

Tas uzreiz iznīcinās visas jūsu vietējās izmaiņas, tāpēc pārliecinieties, ka zināt, ko darāt, un nav nepieciešamas vietējās izmaiņas.

2. metode: saglabāt abas izmaiņas (vietējās un no repo)

Ja vēlaties saglabāt abas izmaiņas (izmaiņas, kas veiktas lokāli, un izmaiņas, kas atrodas krātuvē), varat pievienot un veikt izmaiņas. Kad jūs pavelkat, acīmredzot būs apvienošanās konflikts. Šeit varat izmantot IDE rīkus (piemēram, Difftool un mergetool), lai salīdzinātu abus koda fragmentus un noteiktu, kuras izmaiņas saglabāt un kuras noņemt. Tas ir vidusceļš; izmaiņas netiks zaudētas, kamēr jūs tās manuāli nenoņemsit.

git pievienot $ the_file_under_error git izdarīt git pull

Kad rodas apvienošanās konflikts, uznirstiet tos konfliktu risināšanas rīkus un pārbaudiet pa rindai.

3. metode: saglabāt abas izmaiņas, bet neuzņemties saistības

Šī situācija laiku pa laikam notiek, kad izstrādātāji nav gatavi veikt saistības, jo ir kāds daļēji bojāts kods, kuru jūs atkļūdojat. Šeit mēs varam droši atlicināt izmaiņas, izvilkt versiju no repozitorija un pēc tam noņemt kodu.

git stash save --keep-index

vai

git atlicināt
git pull git atlicināt pop

Ja pēc atlicināšanas atlaišanas ir kādi konflikti, tie jāatrisina parastajā veidā. Varat arī izmantot komandu:

piemērot git atlicināt

popa vietā, ja konfliktu dēļ neesat gatavs zaudēt ievietoto kodu.

Ja apvienošana jums nešķiet reāla iespēja, apsveriet iespēju veikt atkārtotu bāzes darbību. Pārkārtošana ir process, kurā tiek pārvietota vai apvienota virkne saistību ar jaunu bāzes saistību izpildi. Pārinstalēšanas gadījumā mainiet kodu uz:

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

4. metode: veiciet izmaiņas sava koda “konkrētās” daļās

Ja vēlaties veikt izmaiņas noteiktās koda daļās un nevēlaties visu aizstāt, varat veikt visu, ko nevēlaties pārrakstīt, un pēc tam izpildīt 3. metodi. Izmaiņām, kuras veicat, varat izmantot šo komandu vēlaties pārrakstīt no repozitorijā esošās versijas:

git norēķinu ceļš / uz / failu / uz / atgriezties

vai

git checkout HEAD ^ ceļš / uz / fails / uz / atgriezties

Turklāt jums jāpārliecinās, ka fails nav iestudēts, izmantojot:

git reset HEAD ceļš / uz / fails / uz / atgriezties

Pēc tam rīkojieties ar komandu pull:

git pull

Pēc tam mēģinās ielādēt versiju no repozitorija.