Git

Kaip anuliuoti paskutinį įsipareigojimą

Kaip anuliuoti paskutinį įsipareigojimą
Įprasta „Git“ darbo eiga yra ta, kad jūs darote pakeitimus savo projekte, įtraukiate pakeitimus į sustojimo sritį, atliekate pakeitimus, atliekate naujus pakeitimus, pakopos pokyčius, atlikite pakeitimus, jis tęsiasi ir tęsiasi. Bet ką daryti, jei per klaidą įvykdėte savo pakeitimus? Na, nebijok. „Git“ visada galite anuliuoti paskutinį įsipareigojimą. Šiame straipsnyje aš jums parodysiu, kaip anuliuoti paskutinį „Git“ įsipareigojimą. Taigi, pradėkime.

„Test Git“ saugyklos nustatymas:

Šiame skyriuje ketinu klonuoti vieną savo „GitHub“ saugyklą savo kompiuteryje, kad sukurtumėte šio straipsnio bandomąją saugyklą. Jei norite sekti paskui, tai galite padaryti ir jūs. Jei turite savo „Git“ saugyklą, su kuria galėsite dirbti, puiku! Jūs taip pat galite jį naudoti.

Klonuoti vieną iš mano „GitHub“ saugyklos (https: // github.com / dev-shovon / my-project), vykdykite šią komandą:

$ git klonas https: // github.com / dev-shovon / my-project undo_commit_demo

„GitHub“ saugykla turėtų būti klonuota undo_commit_demo / kataloge.

Dabar eikite į undo_commit_demo / katalogą taip:

Įsipareigojimas, kurį norite anuliuoti, gali būti kitoje šakoje kaip mano. Noriu anuliuoti paskutinį įsipareigojimą ty-taisyti atšaka. Taigi, aš turiu traukti šaką ty-taisyti iš mano „GitHub“ saugyklos.

Galite traukti ty-taisyti filialas iš „GitHub“ taip:

$ git pull origin ie-fix

PASTABA: Čia, ty-taisyti yra filialo pavadinimas.

The ty-taisyti šaką reikia traukti.

Dabar atsiskaitykite į filialą (mano atveju, ty-taisyti), iš kurio norite anuliuoti paskutinį įsipareigojimą, atlikite šiuos veiksmus:

$ git checkout ie-fix

Kaip matote, paskutinis ty-taisyti filialas yra aec00f3. Kituose skyriuose aš jums parodysiu būdus, kaip anuliuoti paskutinį įsipareigojimą jūsų „Git“ saugykloje.

Anuliuoti paskutinį įsipareigojimą ir išsaugoti pakeitimus:

Vienas iš būdų anuliuoti paskutinį įsipareigojimą yra naudojimasis „Git“ saugyklos naudojimu. Tai yra tai, kad paskutinis įsipareigojimas pašalinamas ir pakeitimai, kuriuos atlikote šiame įsipareigojime, pridedami prie jūsų „Git“ saugyklos etapo srities. Tokiu būdu, jei norite ką nors išspręsti, galite modifikuoti failus ir pridėti naują įsipareigojimą.

Kaip matote, paskutinis įsipareigojimas mano ty-taisyti filialas yra aec00f3.

$ git žurnalas - tiesioginis

Be to, mano sustojimo vieta yra švari.

$ git būsena

Dabar, norėdami pašalinti arba anuliuoti paskutinį įsipareigojimą, vykdykite šią komandą:

$ git reset - minkšta GALVA ~ 1

Kaip matote, įsipareigokite aec00f3 dingo.

$ git žurnalas - tiesioginis

Be to, failas, kurį pakeičiau atlikdamas paskutinį įsipareigojimą, yra mano sustojimo srityje.

$ git būsena

Dabar galite toliau modifikuoti failus, ištaisyti padarytas klaidas ir vėl atlikti pakeitimus.

Anuliuoti paskutinį įsipareigojimą ir pašalinti pakeitimus:

Jei paskutinis įsipareigojimas, kurį norite pašalinti, jums nenaudingas, galite apsvarstyti galimybę iš naujo nustatyti „Git“ saugyklą. Tai, ką daro iš naujo, pašalina paskutinį įsipareigojimą kaip ir anksčiau. Bet taip pat pašalinami visi pakeitimai, kuriuos atlikote atlikdami paskutinį įsipareigojimą. Atlikite griežtą atstatymą tik tada, kai esate tikri, kad jums nebereikia nieko iš paskutinio įsipareigojimo.

Aš ketinu traukti ty-taisyti filialas iš mano „GitHub“ saugyklos dar kartą atkurti paskutinį įsipareigojimą aec00f3 ir vėl pašalinkite šiame skyriuje.

$ git pull origin ie-fix

Kaip matote, paskutinis įsipareigojimas grįžo. Jei jūsų „Git“ saugykla yra įkelta į „Git“ debesies paslaugą, pvz., „GitHub“, taip pat galite atkurti visus klaidos veiksmus, kuriuos pašalinote klaidingai.

Kaip matote, mano pastatymo vieta yra švari.

$ git būsena

Dabar, norėdami pašalinti paskutinį įsipareigojimą ir pašalinti pakeitimus, vykdykite šią komandą:

$ git reset - hard HEAD ~ 1

Paskutinis įsipareigojimas turėtų būti pašalintas ir GALVA žymeklis turėtų būti atnaujintas.

Kaip matote, įsipareigokite aec00f3 panaikinamas ir įsipareigojama iškart prieš tai (3fffdee) yra paskutinis paskutinis įsipareigojimas.

$ git žurnalas - tiesioginis

Sustojimo vieta taip pat švari. Taigi, pakeitimų failai iš pašalinto įsipareigojimo egzistuoja.

$ git būsena

Atnaujinama nuotolinio „Git“ saugykla:

Dabar, kai sėkmingai pašalinote klaidingą įsipareigojimą iš savo „Git“ saugyklos, galbūt norėsite atnaujinti ir savo „GitHub“ saugyklą. Tai yra šio skyriaus tema.

Kaip matai, git statusas taip pat rodo, kad nuo nuotolinės saugyklos atsilieku 1.

Prieš atnaujindamas savo „GitHub“ saugyklą, įsipareigokite aec00f3 egzistuoja, nors pašalinau jį iš vietinės „Git“ saugyklos, kaip matote.

Norėdami sinchronizuoti vietinę „Git“ saugyklą su „GitHub“ saugykla, vykdykite šią komandą:

$ git push - jėgos kilmė ty-fix

Vietinės „Git“ saugyklos pakeitimai turėtų būti sinchronizuojami su „GitHub“ saugykla.

Turėtų būti atnaujinta „GitHub“ saugykla. Kaip matote, įsipareigokite aec00f3 nebėra sąraše. Įsipareigoti prieš pat aec00f3, kuris yra 3fffdee dabar yra paskutinis įsipareigojimas.

Taigi, taip atšaukiate paskutinį įsipareigojimą „Git“. Dėkojame, kad perskaitėte šį straipsnį.

Įdiekite naujausią „Dolecin Emulator“, skirtą „Gamecube“ ir „Wii“, sistemoje „Linux“
„Delfinų emuliatorius“ leidžia žaisti pasirinktus „Gamecube“ ir „Wii“ žaidimus „Linux“ asmeniniuose kompiuteriuose (PC). „Dolphin Emulator“ yra laisv...
Kaip naudoti „GameConqueror Cheat Engine“ sistemoje „Linux“
Straipsnyje pateikiamas „GameConqueror“ apgaulės variklio naudojimo „Linux“ vadove. Daugelis žaidėjų, žaidžiančių sistemoje „Windows“, dažnai naudoja ...
Geriausi „Linux“ žaidimų konsolių emuliatoriai
Šiame straipsnyje bus išvardyta populiari žaidimų konsolių emuliavimo programinė įranga, skirta „Linux“. „Emuliacija“ yra programinės įrangos suderina...