PHPPamokos.lt


15. Klaidų taisymas - ką daryti, jei kažką pridirbai

Kad ir kokia būtų patogi Git versijų kontrolė, vis tiek lieka žmogiškas faktorius - jūs galite kažką pridirbti ar pamiršti, ir atšaukti pakeitimus yra kiek sudėtingiau - nėra paprasto Undo ar CTRL+Z kombinacijos. Bet atšaukti veiksmus dažniausiu atveju nėra sudėtinga - aptarkime populiariausius veriantus.


Kaip paredaguoti commit'ą

Sakykime, kad padarėte git commit, bet staiga suvokiate, kad į tą patį commit turi įeiti ir dar vienas pakeitimas, kurį pamiršote - o antro atskiro commit su ta pačia žinute daryti nesinori. Tai mums padės parametras --amend.
git commit -m "First commit"
git add .
git commit --amend
Ir viskas - naujai pakeisti failai iš "staging area" bus nukopijuoti į tą patį commit'ą su ta pačia žinute "First commit".

Taip pat galite ir paredaguoti tą žinutę, jei norite:
git commit --amend -m "Full First commit"


Kaip atšaukti failą iš "staging area"

Sakykime, kad padarėte git add bet po to supratote, kad vienas iš failų neturėtų būti įkeltas į "staging area". Jį atšaukti iš ten padės komanda git reset HEAD [failas].

Šiame pavyzdyje mes paredagavome du failus - index.php ir config.php. Įkėlėme juos per git add, bet po to nusprendėme atšaukti config.php - ir tam mums padėjo komanda git reset HEAD.


Kaip atšaukti lokalius failo pakeitimus

Būna ir taip, kad redagavote kažką kelias dienas, bet to nusprendžiate kad "ai, nesąmonė, reikia atšaukti iki pradinės versijos ir pradėti iš naujo (arba daryti kitaip)". Ir tada jūsų teksto redaktorius gali turėti tik ribotą skaičių Undo operacijų, ypač jei pakeitimai buvo daromi kelias dienas, įskaitant kompiuterio restartus. Tai Git gali jums padėti ir parsiųsti naujausią tuo metu esančią aktyvią failo versiją iš repozitorijos: git checkout -- [failas]
git checkout -- config.php
Bet perspėju: būkite atsargūs su šia komanda - ji perrašys jūsų failo pakeitimus "ant viršaus", ir jūsų visas darbas bus ištrintas negrįžtamai (nebent išgelbėtų jei kokias kopijas turės jūsų tekstinis redaktorius).

Kalbant apie PHP redaktorius, labai gražiai su tuo tvarkosi Phpstorm - galima paspausti dešiniuoju klavišu ant atidaryto failo ir tada pasirinkti Git -> Revert, kas bus analogiška tai mūsų aptarinėjamai komandai.

Štai tiek patarimų, kaip padaryti Undo tik su pačios Git sistemos komandomis. Ką gi, atėjo laikas didžiajam galutiniam testui? Ar pasiruošę? Tada spauskite toliau.


(c) 2015-2018. Visais klausimais kreipkitės povilas@laraveldaily.com