Sobes.tech
Junior — Middle

Можеш ли да изброиш и обясниш различните вариации на командата git reset?

sobes.tech AI

Отговор от AI

Командата git reset се използва за отменяне на промени и преместване на указателя на текущия клон към друг commit. Основните варианти са:

  • git reset --soft <commit> — преместване на HEAD към посочения commit, промените остават в staging зоната. Могат да бъдат повторно комитнати.

  • git reset --mixed <commit> (по подразбиране) — преместване на HEAD и нулиране на индекса, но промените остават в работната директория. Позволява да се промени това, което ще бъде включено в следващия commit.

  • git reset --hard <commit> — преместване на HEAD, нулиране на индекса и работната директория, изтриване на всички незапазени промени. Използва се за пълно връщане.

Пример:

git reset --hard HEAD~1  # връщане с един commit назад, изтриване на всички промени