Junior — Middle
Môžete uviesť a vysvetliť hlavné typy príkazu git reset?
sobes.tech AI
Odpoveď od AI
Príkaz git reset sa používa na zrušenie zmien a presunutie ukazovateľa HEAD v Git. Hlavné typy git reset sa líšia úrovňou vplyvu na index a pracovný adresár:
-
git reset --soft <commit>
- Presunie HEAD na zadaný commit.
- Zmeny zostávajú v indexe a pracovnom adresári.
- Používa sa, ak chcete zrušiť commity, ale zachovať zmeny na nový commit.
-
git reset --mixed <commit> (predvolené)
- Presunie HEAD na zadaný commit.
- Zmeny sa odstránia z indexu (staged), ale zostávajú v pracovnom adresári.
- Umožňuje zrušiť indexovanie zmien, bez ich odstránenia zo súborov.
-
git reset --hard <commit>
- Presunie HEAD na zadaný commit.
- Resetuje index a pracovný adresár do stavu tohto commitu.
- Všetky neuložené zmeny budú stratené.
Príklad:
# Zrušiť posledný commit, zachovať zmeny v indexe
git reset --soft HEAD~1
# Zrušiť posledný commit a odstrániť zmeny z indexu, ale nechať ich v súboroch
git reset --mixed HEAD~1
# Kompletné vrátenie posledného commitu a zmien
git reset --hard HEAD~1
Dôležité je používať --hard opatrne, aby ste neztratili dôležité údaje.