Commitien Palauttaminen
Laajassa Git-versionhallinnan kentässä yksi yleisimmistä tilanteista on tarve perua muutokset, jotka tietty commit on tuonut mukanaan. Syynä voi olla esimerkiksi virheen löytyminen, sen huomaaminen, ettei ominaisuus ole valmis tuotantoon, tai halu kokeilla toista lähestymistapaa.
Onneksi Git tarjoaa git revert -komennon, jolla voidaan luoda uusi commit, joka kumoaa tietyn commitin tuomat muutokset tekemällä kyseisten muutosten käänteisen version.
Viimeisimmän commitin palauttaminen
Palauta viimeisin commit käyttämällä seuraavaa komentoa:
git revert HEAD
HEAD on osoitin nykyisen haaran viimeisimpään commit-merkintään.
Koska on vain yksi haara, HEAD osoittaa viimeisimpään commitiin. Tämä komento luo uuden commitin, joka kumoaa edellisen commitin muutokset. Git avaa oletustekstieditorin, jotta commit-viestiä voi tarvittaessa muokata. Tallenna ja sulje editori viimeistelläksesi palautuksen.
Esimerkkityönkulku
Lisää ensin uusi rivi recipe.txt-tiedostoon seuraavalla vaiheella ja commitoi muutos suoraan, ohittaen välivaraston:
Näytä nyt tämän commitin yksityiskohtaiset tiedot käyttämällä git show -komentoa yhdessä HEAD-viitteen kanssa:
Hups, kaikki aiemmat rivit poistettiin, koska käytettiin väärää tulostusoperaattoria — > >>:n sijaan, mikä korvasi tiedoston.
Ei hätää; käytä git revert -komentoa kumotaksesi nämä muutokset viimeisimmässä commitissa:
Kuten huomaat, oletustekstieditori avautuu (Vim tässä tapauksessa) ja näyttää oletuscommit-viestin. Tällä kertaa jätä viesti ennalleen, mutta oikeissa projekteissa on suositeltavaa lisätä palautuksen syy, esimerkiksi:
Tallentaaksesi muutokset ja poistuaksesi Vimistä, paina Escape-näppäintä ja kaksi kertaa isoa Z-kirjainta.
Lopuksi tarkastele kahden viimeisimmän commitin muutoksia:
Käytännössä, kuten odotettua, luotiin uusi commit, joka sisältää käänteiset muutokset.
Käytä nuolinäppäimiä vierittääksesi ylös tai alas ja poistu painamalla q-näppäintä.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain what happens if there are conflicts during a git revert?
How is git revert different from git reset?
What should I do if I want to revert an older commit, not just the latest one?
Awesome!
Completion rate improved to 3.57
Commitien Palauttaminen
Pyyhkäise näyttääksesi valikon
Laajassa Git-versionhallinnan kentässä yksi yleisimmistä tilanteista on tarve perua muutokset, jotka tietty commit on tuonut mukanaan. Syynä voi olla esimerkiksi virheen löytyminen, sen huomaaminen, ettei ominaisuus ole valmis tuotantoon, tai halu kokeilla toista lähestymistapaa.
Onneksi Git tarjoaa git revert -komennon, jolla voidaan luoda uusi commit, joka kumoaa tietyn commitin tuomat muutokset tekemällä kyseisten muutosten käänteisen version.
Viimeisimmän commitin palauttaminen
Palauta viimeisin commit käyttämällä seuraavaa komentoa:
git revert HEAD
HEAD on osoitin nykyisen haaran viimeisimpään commit-merkintään.
Koska on vain yksi haara, HEAD osoittaa viimeisimpään commitiin. Tämä komento luo uuden commitin, joka kumoaa edellisen commitin muutokset. Git avaa oletustekstieditorin, jotta commit-viestiä voi tarvittaessa muokata. Tallenna ja sulje editori viimeistelläksesi palautuksen.
Esimerkkityönkulku
Lisää ensin uusi rivi recipe.txt-tiedostoon seuraavalla vaiheella ja commitoi muutos suoraan, ohittaen välivaraston:
Näytä nyt tämän commitin yksityiskohtaiset tiedot käyttämällä git show -komentoa yhdessä HEAD-viitteen kanssa:
Hups, kaikki aiemmat rivit poistettiin, koska käytettiin väärää tulostusoperaattoria — > >>:n sijaan, mikä korvasi tiedoston.
Ei hätää; käytä git revert -komentoa kumotaksesi nämä muutokset viimeisimmässä commitissa:
Kuten huomaat, oletustekstieditori avautuu (Vim tässä tapauksessa) ja näyttää oletuscommit-viestin. Tällä kertaa jätä viesti ennalleen, mutta oikeissa projekteissa on suositeltavaa lisätä palautuksen syy, esimerkiksi:
Tallentaaksesi muutokset ja poistuaksesi Vimistä, paina Escape-näppäintä ja kaksi kertaa isoa Z-kirjainta.
Lopuksi tarkastele kahden viimeisimmän commitin muutoksia:
Käytännössä, kuten odotettua, luotiin uusi commit, joka sisältää käänteiset muutokset.
Käytä nuolinäppäimiä vierittääksesi ylös tai alas ja poistu painamalla q-näppäintä.
Kiitos palautteestasi!