Junior — Middle
Môžete vysvetliť, čo robí príkaz Git reset a v akých scenároch sa používa?
sobes.tech AI
Odpoveď od AI
Príkaz git reset saťahuje zmeny späť a presunie ukazovateľ aktuálnej vetvy (HEAD) na iný commit. Môže meniť stav indexu (staging area) a pracovného adresára v závislosti od parametrov.
Hlavné možnosti:
-
git reset --soft <commit>— presunie HEAD na špecifikovaný commit, ponechá zmeny v indexe a pracovnom adresári. Používa sa na zrušenie commitov, pričom zachováva zmeny na ďalší commit. -
git reset --mixed <commit>(predvolené) — presunie HEAD a resetuje index, ale zmeny zostávajú v pracovnom adresári. Umožňuje zrušiť commit a odstrániť zmeny z indexu. -
git reset --hard <commit>— presunie HEAD, resetuje index a pracovný adresár, úplne odstráni všetky zmeny po špecifikovanom commite.
Scenáre použitia:
- Zrušiť posledné commity.
- Odstrániť zmeny z indexu.
- Kompletný návrat k predchádzajúcemu stavu.
Príklad:
git reset --hard HEAD~1 # návrat o jeden commit späť s odstránením zmien