Junior
Kako otkazati poslednju commit u sistemu kontrole verzija?
sobes.tech АИ
Одговор од АИ
Када користите Git, постоје различити начини:
1. Откажи последњи комит, задржавајући промене:
git reset --soft HEAD~1
# Отказује последњи комит, индексиране промене остају
# Радни директоријум се не мења
2. Откажи последњи комит, отказујући индексиране промене, али задржавајући радне:
git reset --mixed HEAD~1
# Отказује последњи комит и отказује индексирање промена
# Радни директоријум се не мења
3. Потпуно отказати последњи комит, укључујући промене:
git reset --hard HEAD~1
# Потпуно отказује последњи комит
# Индексиране промене и радни директоријум ће бити враћени у стање пре последњег комита
# Све незаписане промене у радном директоријуму ће бити изгубљене
4. Направити нови комит који отказује промене последњег:
git revert HEAD
# Креира нови комит који отказује промене последњег комита
# Историја се задржава, ово је безбедан начин када радите са јавним гранама
Избор зависи од жељеног резултата и да ли је грана објављена. --hard треба користити опрезно, јер може довести до губитка података. git revert је пожељнији када радите са гранама које користе други програмери.