Sobes.tech
Junior

Nəzarət sistemində son commit necə ləğv edilir?

sobes.tech Süni İntellekt

AI-dan cavab

Git istifadə edərkən, bir neçə üsul mövcuddur:

1. Sonuncu commit-i ləğv etmək, dəyişiklikləri saxlayaraq:

git reset --soft HEAD~1
# Sonuncu commit-i ləğv edir, indeksdəki dəyişikliklər qalır
# İşçi qovluğunda dəyişikliklər dəyişmir

2. Sonuncu commit-i ləğv etmək, indeksdəki dəyişiklikləri ləğv etmək, amma işçi dəyişikliklərini saxlamaq:

git reset --mixed HEAD~1
# Sonuncu commit-i ləğv edir və dəyişikliklərin indeksləşdirilməsini ləğv edir
# İşçi qovluğunda dəyişikliklər dəyişmir

3. Sonuncu commit-i tamamilə ləğv etmək, dəyişikliklər daxil olmaqla:

git reset --hard HEAD~1
# Sonuncu commit-i tamamilə ləğv edir
# İndeksdəki dəyişikliklər və işçi qovluğu sonuncu commit-dən əvvəlki vəziyyətə qaytarılır
# İşçi qovluğundakı bütün saxlanılmamış dəyişikliklər itirilir

4. Sonuncu dəyişiklikləri ləğv edən yeni commit yaratmaq:

git revert HEAD
# Sonuncu commit-in dəyişikliklərini ləğv edən yeni commit yaradır
# Tarixçə saxlanılır, bu, ictimai şaxələr ilə işləyərkən təhlükəsiz yoldur

Seçim, istənilən nəticəyə və şaxənin yayımlanıb-yayımlanmadığına bağlıdır. --hard ehtiyatla istifadə olunmalıdır, çünki məlumat itkisinə səbəb ola bilər. git revert digər inkişaf etdiricilər tərəfindən istifadə olunan şaxələr ilə işləyərkən üstünlük təşkil edir.