Sobes.tech
Junior — Middle

Kas on Git reset käsk ja millistes olukordades seda kasutatakse?

sobes.tech AI

Vastus AI-lt

git reset käsk kasutatakse muudatuste tühistamiseks ja praeguse haru (HEAD) näitaja liigutamiseks teise commit'i juurde. See võib muuta indeksi (staging area) ja töökausta olekut sõltuvalt parameetritest.

Peamised valikud:

  • git reset --soft <commit> — liigutab HEAD-i määratud commit'i juurde, jättes muudatused indeksisse ja töökausta. Kasutatakse commit'ide tühistamiseks, säilitades muudatused uueks commit'iks.

  • git reset --mixed <commit> (vaikimisi) — liigutab HEAD-i ja lähtestab indeksi, kuid muudatused jäävad töökausta. Võimaldab tühistada commit'id ja eemaldada muudatused indeksist.

  • git reset --hard <commit> — liigutab HEAD-i, lähtestab indeksi ja töökausta ning kustutab täielikult kõik muudatused pärast määratud commit'i.

Kasutusstsenaariumid:

  • Viimaste commit'ide tühistamine.
  • Muudatuste eemaldamine indeksist.
  • Täielik tagasipöördumine eelnevale olekule.

Näide:

git reset --hard HEAD~1  # tagasi ühe commit'i võrra ja muudatuste kustutamine